HtmlDocument.InvokeScript Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Kör en active scripting-funktion som definierats på en HTML-sida.
Överlagringar
| Name | Description |
|---|---|
| InvokeScript(String) |
Kör en active scripting-funktion som definierats på en HTML-sida. |
| InvokeScript(String, Object[]) |
Kör en active scripting-funktion som definierats på en HTML-sida. |
Exempel
I följande kodexempel körs innehållet i ett skript på en webbsida. Kodexemplet kräver att du har läst in följande webbsida.
<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)
- Källa:
- HtmlDocument.cs
- Källa:
- HtmlDocument.cs
- Källa:
- HtmlDocument.cs
- Källa:
- HtmlDocument.cs
- Källa:
- HtmlDocument.cs
Kör en active scripting-funktion som definierats på en HTML-sida.
public:
System::Object ^ InvokeScript(System::String ^ scriptName);
public object InvokeScript(string scriptName);
public object? InvokeScript(string scriptName);
member this.InvokeScript : string -> obj
Public Function InvokeScript (scriptName As String) As Object
Parametrar
- scriptName
- String
Namnet på den skriptmetod som ska anropas.
Returer
Objektet som returnerades av Active Scripting-anropet.
Exempel
I följande kodexempel körs innehållet i ett skript på en webbsida. Kodexemplet kräver att du har en WebBrowser i ditt program som heter WebBrowser1, och att du har läst in följande webbsida.
<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
Kommentarer
Den underliggande typen av objekt som returneras av InvokeScript varierar. Om den anropade funktionen Active Scripting returnerar skalära data, till exempel en sträng eller ett heltal, returneras den som en sträng. Om det returnerar ett skriptbaserat objekt, till exempel ett objekt som skapats new med JScript- eller VBScript-operatorn, kommer det att vara av typen Object. (Du kan göra anrop på sådana objekt genom att anropa GetType och använda InvokeMember.) Om det returnerar ett HTML DOM-element, till exempel ett DIV eller ett TABLE, kommer det att vara av typen Object. Om du har lagt till en projektreferens till MSHTML.DLL kommer det dock att omvandlas till dess specifika ohanterade DOM-typ.
Du kan anropa alla funktioner som skrivs på valfritt active scripting-språk som är installerat på användarens dator, inklusive JScript och VBScript.
InvokeScript gör ingenting om användaren uttryckligen har inaktiverat skriptkörning i Internet Explorer, eller om den aktuella säkerhetskonfigurationen för webbsidan inte tillåter det.
Gäller för
InvokeScript(String, Object[])
- Källa:
- HtmlDocument.cs
- Källa:
- HtmlDocument.cs
- Källa:
- HtmlDocument.cs
- Källa:
- HtmlDocument.cs
- Källa:
- HtmlDocument.cs
Kör en active scripting-funktion som definierats på en HTML-sida.
public:
System::Object ^ InvokeScript(System::String ^ scriptName, cli::array <System::Object ^> ^ args);
public object InvokeScript(string scriptName, 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
Parametrar
- scriptName
- String
Namnet på den skriptmetod som ska anropas.
- args
- Object[]
Argumenten som ska skickas till skriptmetoden.
Returer
Objektet som returnerades av Active Scripting-anropet.
Exempel
I följande kodexempel körs innehållet i ett skript på en webbsida. Kodexemplet kräver att du har en WebBrowser i ditt program som heter WebBrowser1, och att du har läst in följande webbsida.
<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
Kommentarer
Den underliggande typen av objekt som returneras av InvokeScript varierar. Om den anropade funktionen Active Scripting returnerar skalära data, till exempel en sträng eller ett heltal, returneras den som en sträng. Om det returnerar ett skriptbaserat objekt, till exempel ett objekt som skapats new med JScript- eller VBScript-operatorn, kommer det att vara av typen Object. (Du kan göra anrop på sådana objekt genom att anropa GetType och använda InvokeMember.) Om det returnerar ett HTML DOM-element, till exempel ett DIV eller ett TABLE, kommer det att vara av typen Object. Om du har lagt till en projektreferens till MSHTML.DLL kommer det dock att omvandlas till dess specifika ohanterade DOM-typ.
Du kan anropa alla funktioner som skrivs på valfritt active scripting-språk som är installerat på användarens dator, inklusive JScript och VBScript.
Den här metoden gör ingenting om användaren uttryckligen har inaktiverat skriptkörningen i Internet Explorer, eller om den aktuella säkerhetskonfigurationen för webbsidan inte tillåter det.