HtmlDocument.InvokeScript Méthode

Définition

Exécute une fonction Active Scripting définie dans une page HTML.

Surcharges

InvokeScript(String)

Exécute une fonction Active Scripting définie dans une page HTML.

InvokeScript(String, Object[])

Exécute une fonction Active Scripting définie dans une page HTML.

Exemples

L’exemple de code suivant exécute le contenu d’un script dans une page Web. L’exemple de code nécessite que vous ayez chargé la page Web suivante.

<HTML>  
<SCRIPT>  
function test(name, address) {  
window.alert("Name is " + name + "; address is " + address);  
}  
</SCRIPT>  

<BODY>  
</BODY>  
</HTML>  
private void InvokeTestMethod(String name, String address)
{
    if (webBrowser1.Document != null)
    {
        Object[] objArray = new Object[2];
        objArray[0] = (Object)name;
        objArray[1] = (Object)address;
        webBrowser1.Document.InvokeScript("test", objArray);
    }
}
Private Sub InvokeTestMethod(ByVal Name As String, ByVal Address As String)
    If (Not (WebBrowser1.Document Is Nothing)) Then
        Dim ObjArr(2) As Object
        ObjArr(0) = CObj(New String(Name))
        ObjArr(1) = CObj(New String(Address))
        WebBrowser1.Document.InvokeScript("test", ObjArr)
    End If
End Sub

InvokeScript(String)

Exécute une fonction Active Scripting définie dans une page HTML.

public:
 System::Object ^ InvokeScript(System::String ^ scriptName);
public object InvokeScript (string scriptName);
member this.InvokeScript : string -> obj
Public Function InvokeScript (scriptName As String) As Object

Paramètres

scriptName
String

Nom de la méthode du script à appeler.

Retours

Object

Objet retourné par l'appel Active Scripting.

Exemples

L’exemple de code suivant exécute le contenu d’un script dans une page Web. L’exemple de code nécessite qu’une WebBrowser application soit appelée WebBrowser1et que vous avez chargé la page web suivante.

<HTML>  

    <HEAD>  
        <TITLE>Invoke Script Sample</TITLE>  

        <SCRIPT>  
            function MyObject() {  
                this.Data = "Data for my private object.";  
            }  
            // Return a string.  
            function test() {  
                return("This is a test.");  
            }  
            // Return a JScript object.  
            function testJScriptObject() {  
                return(new(MyObject));  
            }  
            // Return a DOM element.  
            function testElement() {  
                return(div1);  
            }  
        </SCRIPT>  
    </HEAD>  

    <BODY>  

        <DIV id="div1">  
        </DIV>  

    </BODY>  

</HTML>  
private void InvokeScript()
{
    if (webBrowser1.Document != null)
    {
        HtmlDocument doc = webBrowser1.Document;
        String str = doc.InvokeScript("test").ToString() ;
        Object jscriptObj = doc.InvokeScript("testJScriptObject");
        Object domOb = doc.InvokeScript("testElement");
    }
}
Private Sub InvokeScript()
    If (WebBrowser1.Document IsNot Nothing) Then
        With WebBrowser1.Document
            Dim Str As String = .InvokeScript("test")
            Dim JScriptObj As Object = .InvokeScript("testJScriptObject")
            Dim DomObj As Object = .InvokeScript("testElement")
        End With
    End If
End Sub

Remarques

Le type sous-jacent de l’objet retourné InvokeScript varie. Si la fonction Active Scripting retourne des données scalaires, telles qu’une chaîne ou un entier, elle est retournée sous forme de chaîne. S’il retourne un objet basé sur un script, tel qu’un objet créé à l’aide de l’opérateur new JScript ou VBScript, il sera de type Object. (Vous pouvez effectuer des appels sur ces objets en appelant GetType et en utilisant InvokeMember.) S’il retourne un élément DOM HTML, tel qu’un ou un DIV TABLE, il sera de type Object; si vous avez ajouté une référence de projet à MSHTML.DLL, toutefois, il sera converti en son type DOM non managé spécifique.

Vous pouvez appeler n’importe quelle fonction écrite dans n’importe quel langage de script actif installé sur l’ordinateur de l’utilisateur, y compris JScript et VBScript.

Ce InvokeScript n’est pas le cas si l’utilisateur a explicitement désactivé l’exécution du script dans Internet Explorer, ou si la configuration de sécurité actuelle de la page Web ne l’autorise pas.

S’applique à

InvokeScript(String, Object[])

Exécute une fonction Active Scripting définie dans une page HTML.

public:
 System::Object ^ InvokeScript(System::String ^ scriptName, cli::array <System::Object ^> ^ args);
public object InvokeScript (string scriptName, object[] args);
member this.InvokeScript : string * obj[] -> obj
Public Function InvokeScript (scriptName As String, args As Object()) As Object

Paramètres

scriptName
String

Nom de la méthode du script à appeler.

args
Object[]

Arguments à transmettre à la méthode de script.

Retours

Object

Objet retourné par l'appel Active Scripting.

Exemples

L’exemple de code suivant exécute le contenu d’un script dans une page Web. L’exemple de code nécessite qu’une WebBrowser application soit appelée WebBrowser1et que vous avez chargé la page web suivante.

<HTML>  
    <SCRIPT>  
        function test(name, address) {  
            window.alert("Name is " + name + "; address is " + address);  
        }  
    </SCRIPT>  

    <BODY>  
    </BODY>  
</HTML>  
private void InvokeTestMethod(String name, String address)
{
    if (webBrowser1.Document != null)
    {
        Object[] objArray = new Object[2];
        objArray[0] = (Object)name;
        objArray[1] = (Object)address;
        webBrowser1.Document.InvokeScript("test", objArray);
    }
}
Private Sub InvokeTestMethod(ByVal Name As String, ByVal Address As String)
    If (Not (WebBrowser1.Document Is Nothing)) Then
        Dim ObjArr(2) As Object
        ObjArr(0) = CObj(New String(Name))
        ObjArr(1) = CObj(New String(Address))
        WebBrowser1.Document.InvokeScript("test", ObjArr)
    End If
End Sub

Remarques

Le type sous-jacent de l’objet retourné InvokeScript varie. Si la fonction Active Scripting retourne des données scalaires, telles qu’une chaîne ou un entier, elle est retournée sous forme de chaîne. S’il retourne un objet basé sur un script, tel qu’un objet créé à l’aide de l’opérateur new JScript ou VBScript, il sera de type Object. (Vous pouvez effectuer des appels sur ces objets en appelant GetType et en utilisant InvokeMember.) S’il retourne un élément DOM HTML, tel qu’un ou un DIV TABLE, il sera de type Object; si vous avez ajouté une référence de projet à MSHTML.DLL, toutefois, il sera converti en son type DOM non managé spécifique.

Vous pouvez appeler n’importe quelle fonction écrite dans n’importe quel langage de script actif installé sur l’ordinateur de l’utilisateur, y compris JScript et VBScript.

Cette méthode ne fera rien si l’utilisateur a explicitement désactivé l’exécution du script dans Internet Explorer, ou si la configuration de sécurité actuelle de la page Web ne l’autorise pas.

S’applique à