Condividi tramite


WebBrowser.InvokeScript Metodo

Definizione

Esegue una funzione di scripting definita nel documento attualmente caricato.

Overload

InvokeScript(String)

Esegue una funzione di scripting implementata dal documento attualmente caricato.

InvokeScript(String, Object[])

Esegue una funzione di scripting definita nel documento attualmente caricato.

InvokeScript(String)

Esegue una funzione di scripting implementata dal documento attualmente caricato.

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

Parametri

scriptName
String

Nome della funzione di scripting da eseguire.

Restituisce

Oggetto restituito dalla chiamata dello script attivo.

Eccezioni

L'istanza di WebBrowser non è più valida.

Non è possibile recuperare un riferimento all'oggetto nativo WebBrowser sottostante.

La funzione di script non esiste.

Esempio

Nell'esempio seguente viene illustrato come chiamare una funzione script in un documento da un'applicazione WPF usando InvokeScript(String). In questo esempio la funzione script non ha parametri.

Di seguito è riportato il documento HTML che implementa la funzione script che verrà chiamata da WPF.

<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>  

Di seguito viene illustrata l'implementazione WPF per chiamare la funzione script nel documento HTML.

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);  
    }  
  }  
}  

Commenti

InvokeScript(String) non deve essere chiamato prima del documento che implementa il caricamento. È possibile rilevare quando un documento ha terminato il caricamento gestendo l'evento LoadCompleted .

Si applica a

InvokeScript(String, Object[])

Esegue una funzione di scripting definita nel documento attualmente caricato.

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

Parametri

scriptName
String

Nome della funzione di scripting da eseguire.

args
Object[]

Parametri da passare alla funzione di scripting.

Restituisce

Oggetto restituito dalla chiamata dello script attivo.

Attributi

Eccezioni

L'istanza di WebBrowser non è più valida.

Non è possibile recuperare un riferimento all'oggetto nativo WebBrowser sottostante.

La funzione di script non esiste.

Esempio

Nell'esempio seguente viene illustrato come chiamare le funzioni script in un documento da un'applicazione usando InvokeScript(String, Object[]). In questo esempio le funzioni script richiedono parametri.

Di seguito è riportato il documento che implementa le funzioni di script che verranno chiamate da WPF.

<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>  

Di seguito viene illustrata l'implementazione WPF per chiamare le funzioni di script nel documento HTML.

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);  
    }  
  }  
}  

Commenti

InvokeScript(String, Object[]) non deve essere chiamato prima del documento che implementa il caricamento. È possibile rilevare quando un documento ha terminato il caricamento gestendo l'evento LoadCompleted .

Se non si passano valori di parametro sufficienti allo script che si sta richiamando, i parametri che non si passano valori avranno il valore non definito. Se si passano troppi valori di parametro, i valori in eccesso vengono ignorati.

Si applica a