HtmlDocument.InvokeScript Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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
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 WebBrowser1
et 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
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 WebBrowser1
et 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.