Bagikan melalui


WebBrowser.InvokeScript Metode

Definisi

Menjalankan fungsi skrip yang ditentukan dalam dokumen yang saat ini dimuat.

Overload

InvokeScript(String)

Menjalankan fungsi skrip yang diimplementasikan oleh dokumen yang saat ini dimuat.

InvokeScript(String, Object[])

Menjalankan fungsi skrip yang ditentukan dalam dokumen yang saat ini dimuat.

InvokeScript(String)

Menjalankan fungsi skrip yang diimplementasikan oleh dokumen yang saat ini dimuat.

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

Nama fungsi skrip yang akan dijalankan.

Mengembalikan

Objek yang dikembalikan oleh panggilan Skrip Aktif.

Pengecualian

Instans WebBrowser tidak lagi valid.

Referensi ke native WebBrowser yang mendasar tidak dapat diambil.

Fungsi skrip tidak ada.

Contoh

Contoh berikut menunjukkan cara memanggil fungsi skrip dalam dokumen dari aplikasi WPF dengan menggunakan InvokeScript(String). Dalam contoh ini, fungsi skrip tidak memiliki parameter.

Berikut ini adalah dokumen HTML yang mengimplementasikan fungsi skrip yang akan dipanggil dari 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>  

Berikut ini menunjukkan implementasi WPF untuk memanggil fungsi skrip dalam dokumen 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);  
    }  
  }  
}  

Keterangan

InvokeScript(String) tidak boleh dipanggil sebelum dokumen yang mengimplementasikannya telah selesai dimuat. Anda dapat mendeteksi kapan dokumen selesai dimuat dengan menangani LoadCompleted peristiwa.

Berlaku untuk

InvokeScript(String, Object[])

Menjalankan fungsi skrip yang ditentukan dalam dokumen yang saat ini dimuat.

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

Nama fungsi skrip yang akan dijalankan.

args
Object[]

Parameter yang akan diteruskan ke fungsi skrip.

Mengembalikan

Objek yang dikembalikan oleh panggilan Skrip Aktif.

Atribut

Pengecualian

Instans WebBrowser tidak lagi valid.

Referensi ke native WebBrowser yang mendasar tidak dapat diambil.

Fungsi skrip tidak ada.

Contoh

Contoh berikut menunjukkan cara memanggil fungsi skrip dalam dokumen dari aplikasi dengan menggunakan InvokeScript(String, Object[]). Dalam contoh ini, fungsi skrip memerlukan parameter.

Berikut ini adalah dokumen yang mengimplementasikan fungsi skrip yang akan dipanggil dari 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>  

Berikut ini menunjukkan implementasi WPF untuk memanggil fungsi skrip dalam dokumen 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);  
    }  
  }  
}  

Keterangan

InvokeScript(String, Object[]) tidak boleh dipanggil sebelum dokumen yang mengimplementasikannya telah selesai dimuat. Anda dapat mendeteksi kapan dokumen selesai dimuat dengan menangani LoadCompleted peristiwa.

Jika Anda tidak meneruskan nilai parameter yang cukup ke skrip yang Anda panggil, parameter yang tidak Anda berikan nilainya akan memiliki nilai yang tidak terdefinisi. Jika Anda meneruskan terlalu banyak nilai parameter, nilai berlebih diabaikan.

Berlaku untuk