2009-06-24 7 views
2

J'ai vu le post relatif à ce sujet, mais il ne couvre que l'utilisation de VBScript en ligne pour les événements onmouseover, tout en appelant une fonction Javascript pour onClick.Appel de VBScript à partir de Javascript

Existe-t-il un moyen d'appeler un VBScript Sub pour l'événement onClick à partir d'un bouton qui utilise les événements Javascript onmouseover et onmouseout?

Actuellement, lorsque j'essaie, j'obtiens une erreur indiquant que l'objet ne prend pas en charge la propriété ou la méthode.

Répondre

2

Il est possible, mais vous devrez préfixer tous vos appels de script en HTML avec la langue appropriée.

onmouseover="javascript: vbfunction();" 

S'il y a des appels de script qui ne sont pas préfixés, vous pouvez obtenir des erreurs sur la page comme l'analyseur ne sait pas ce langage de script est utilisé.

+1

Internet Explorer utilise par défaut la langue du premier élément de script qu'il analyse. Donc, si le premier élément de script est javascript, vous ne devriez pas avoir besoin de spécifier "javascript:" dans votre gestionnaire d'événements. –

+0

Essayé onclick = "javascript: btnGet_Click();" (btnGet_Click est le nom du sous-vb) et j'obtiens toujours l'erreur que l'objet ne supporte pas cette propriété ou méthode. –

+0

Vous devez l'ajouter à tous vos gestionnaires. Comme l'intervenant précédent l'a noté, IE correspond par défaut à la première langue, donc si vous le spécifiez pour tous les gestionnaires, il n'y a pas d'ambiguïté. – hova

0

Assurez-vous que le nom du sous-appelant ne correspond pas à celui d'un autre objet du script.

2

Mettez votre code dans le Head Tags: <head> </head>

Ajouter votre VBScript entre ces supports:

<script type="text/vbscript"> 
</script> 

Function myVBFunction() 
    ' here comes your vbscript code 
End Function 

// From a hardcoded link, don't write a semicolon a the end: 
<a href="#" onclick="VBscript:myVBFunction('parameter')">link</a> 

Vous pouvez en lire davantage here.

Questions connexes