WebBrowser.InvokeScript Methode

Definition

Führt eine Skriptfunktion aus, die im derzeit geladenen Dokument definiert ist.

Überlädt

InvokeScript(String)

Führt eine Skriptfunktion aus, die vom derzeit geladenen Dokument implementiert wird.

InvokeScript(String, Object[])

Führt eine Skriptfunktion aus, die im derzeit geladenen Dokument definiert ist.

InvokeScript(String)

Führt eine Skriptfunktion aus, die vom derzeit geladenen Dokument implementiert wird.

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

Parameter

scriptName
String

Der Name der auszuführenden Skriptfunktion.

Gibt zurück

Object

Das Objekt, das durch den Active Scripting-Aufruf zurückgegeben wurde.

Ausnahmen

Die WebBrowser-Instanz ist nicht mehr gültig.

Ein Verweis auf den zugrunde liegenden nativen WebBrowser konnte nicht abgerufen werden.

Die Skriptfunktion ist nicht vorhanden.

Beispiele

Im folgenden Beispiel wird gezeigt, wie Sie eine Skriptfunktion in einem Dokument aus einer WPF-Anwendung mithilfe InvokeScript(String)aufrufen. In diesem Beispiel weist die Skriptfunktion keine Parameter auf.

Im Folgenden finden Sie das HTML-Dokument, das die Skriptfunktion implementiert, die von WPF aufgerufen wird.

<html>  
    <head>  
        <script type="text/javascript">  
            // Function Without Parameters  
            function JavaScriptFunctionWithoutParameters()    
            {  
              outputID.innerHTML = "JavaScript function called!";  
            }  
        </script>  
    </head>  
    <body>  
    <div id="outputID" style="color:Red; font-size:16">  
        Hello from HTML document with script!  
    </div>  
    </body>  
</html>  

Im folgenden Beispiel wird die WPF-Implementierung gezeigt, um die Skriptfunktion im HTML-Dokument aufzurufen.

private void callScriptFunctionNoParamButton_Click(object sender, RoutedEventArgs e)  
{  
  // Make sure the HTML document has loaded before attempting to  
  // invoke script of the document page. You could set loadCompleted  
  // to true when the LoadCompleted event on the WebBrowser fires.  
  if (this.loadCompleted)  
  {  
    try  
    {  
      this.webBrowser.InvokeScript("JavaScriptFunctionWithoutParameters");  
    }  
    catch (Exception ex)  
    {  
      string msg = "Could not call script: " +  
                   ex.Message +  
                  "\n\nPlease click the 'Load HTML Document with Script' button to load.";  
      MessageBox.Show(msg);  
    }  
  }  
}  

Hinweise

InvokeScript(String) sollte nicht aufgerufen werden, bevor das Dokument aufgerufen wird, das das Laden implementiert. Sie können erkennen, wann ein Dokument das Laden abgeschlossen hat, indem Sie das LoadCompleted Ereignis behandeln.

Gilt für:

InvokeScript(String, Object[])

Führt eine Skriptfunktion aus, die im derzeit geladenen Dokument definiert ist.

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

Parameter

scriptName
String

Der Name der auszuführenden Skriptfunktion.

args
Object[]

Die an die Skriptfunktion zu übergebenden Parameter.

Gibt zurück

Object

Das Objekt, das durch den Active Scripting-Aufruf zurückgegeben wurde.

Attribute

Ausnahmen

Die WebBrowser-Instanz ist nicht mehr gültig.

Ein Verweis auf den zugrunde liegenden nativen WebBrowser konnte nicht abgerufen werden.

Die Skriptfunktion ist nicht vorhanden.

Beispiele

Im folgenden Beispiel wird gezeigt, wie Skriptfunktionen in einem Dokument mithilfe einer Anwendung aufgerufen InvokeScript(String, Object[])werden. In diesem Beispiel erfordern die Skriptfunktionen Parameter.

Im Folgenden finden Sie das Dokument, das die Skriptfunktionen implementiert, die von WPF aufgerufen werden.

<html>  
    <head>  
        <script type="text/javascript">  
            // Function Without Parameters  
            function JavaScriptFunctionWithoutParameters()    
            {  
              outputID.innerHTML = "JavaScript function 'called: " + message + ".";  
            }  
        </script>  
    </head>  
    <body>  
    <div id="outputID" style="color:Red; font-size:16">  
        Hello from HTML document with script!  
    </div>  
    </body>  
</html>  

Im folgenden Beispiel wird die WPF-Implementierung gezeigt, um die Skriptfunktionen im HTML-Dokument aufzurufen.

private void callScriptFunctionNoParamButton_Click(object sender, RoutedEventArgs e)  
{  
  // Make sure the HTML document has loaded before attempting to  
  // invoke script of the document page. You could set loadCompleted  
  // to true when the LoadCompleted event on the WebBrowser fires.  
  if (this.loadCompleted)  
  {  
    try  
    {  
      this.webBrowser.InvokeScript("JavaScriptFunctionWithoutParameters", this.messageTextBox.Text);  
    }  
    catch (Exception ex)  
    {  
      string msg = "Could not call script: " +  
                   ex.Message +  
                  "\n\nPlease click the 'Load HTML Document with Script' button to load.";  
      MessageBox.Show(msg);  
    }  
  }  
}  

Hinweise

InvokeScript(String, Object[]) sollte nicht aufgerufen werden, bevor das Dokument aufgerufen wird, das das Laden implementiert. Sie können erkennen, wann ein Dokument das Laden abgeschlossen hat, indem Sie das LoadCompleted Ereignis behandeln.

Wenn Sie nicht genügend Parameterwerte an das Skript übergeben, das Sie aufrufen, werden die Parameter, die Sie nicht übergeben, über den nicht definierten Wert verfügen. Wenn Sie zu viele Parameterwerte übergeben, werden die übermäßigen Werte ignoriert.

Gilt für: