HtmlDocument.InvokeScript Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menjalankan fungsi Skrip Aktif yang ditentukan dalam halaman HTML.
Overload
InvokeScript(String) |
Menjalankan fungsi Skrip Aktif yang ditentukan dalam halaman HTML. |
InvokeScript(String, Object[]) |
Menjalankan fungsi Skrip Aktif yang ditentukan dalam halaman HTML. |
Contoh
Contoh kode berikut menjalankan konten skrip di halaman Web. Contoh kode mengharuskan Anda memuat halaman Web berikut.
<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)
Menjalankan fungsi Skrip Aktif yang ditentukan dalam halaman HTML.
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
Parameter
- scriptName
- String
Nama metode skrip yang akan dipanggil.
Mengembalikan
Objek yang dikembalikan oleh panggilan Skrip Aktif.
Contoh
Contoh kode berikut menjalankan konten skrip di halaman Web. Contoh kode mengharuskan Anda memiliki WebBrowser di aplikasi yang disebut WebBrowser1
, dan Anda telah memuat halaman Web berikut.
<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
Keterangan
Jenis objek yang mendasar yang dikembalikan oleh InvokeScript akan bervariasi. Jika fungsi Active Scripting yang disebut mengembalikan data skalar, seperti string atau bilangan bulat, fungsi tersebut akan dikembalikan sebagai string. Jika mengembalikan objek berbasis skrip, seperti objek yang dibuat menggunakan operator JScript atau VBScript new
, itu akan berjenis Object
. (Anda dapat melakukan panggilan pada objek tersebut dengan memanggil GetType dan menggunakan InvokeMember.) Jika mengembalikan elemen HTML DOM, seperti DIV
atau TABLE
, itu akan berjenis Object
; jika Anda telah menambahkan referensi proyek ke MSHTML.DLL, namun, itu akan ditransmisikan ke jenis DOM spesifik yang tidak dikelola.
Anda dapat memanggil fungsi apa pun yang ditulis dalam bahasa Skrip Aktif apa pun yang diinstal di komputer pengguna, termasuk JScript dan VBScript.
InvokeScript tidak akan melakukan apa pun jika pengguna telah secara eksplisit menonaktifkan eksekusi skrip di Internet Explorer, atau jika konfigurasi keamanan saat ini untuk halaman Web tidak memperbolehkannya.
Berlaku untuk
InvokeScript(String, Object[])
Menjalankan fungsi Skrip Aktif yang ditentukan dalam halaman HTML.
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
Parameter
- scriptName
- String
Nama metode skrip yang akan dipanggil.
- args
- Object[]
Argumen yang akan diteruskan ke metode skrip.
Mengembalikan
Objek yang dikembalikan oleh panggilan Skrip Aktif.
Contoh
Contoh kode berikut menjalankan konten skrip di halaman Web. Contoh kode mengharuskan Anda memiliki WebBrowser di aplikasi yang disebut WebBrowser1
, dan Anda telah memuat halaman Web berikut.
<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
Keterangan
Jenis objek yang mendasar yang dikembalikan oleh InvokeScript akan bervariasi. Jika fungsi Active Scripting yang disebut mengembalikan data skalar, seperti string atau bilangan bulat, fungsi tersebut akan dikembalikan sebagai string. Jika mengembalikan objek berbasis skrip, seperti objek yang dibuat menggunakan operator JScript atau VBScript new
, itu akan berjenis Object
. (Anda dapat melakukan panggilan pada objek tersebut dengan memanggil GetType dan menggunakan InvokeMember.) Jika mengembalikan elemen HTML DOM, seperti DIV
atau TABLE
, itu akan berjenis Object
; jika Anda telah menambahkan referensi proyek ke MSHTML.DLL, namun, itu akan ditransmisikan ke jenis DOM spesifik yang tidak dikelola.
Anda dapat memanggil fungsi apa pun yang ditulis dalam bahasa Skrip Aktif apa pun yang diinstal pada komputer pengguna, termasuk JScript dan VBScript.
Metode ini tidak akan melakukan apa pun jika pengguna telah secara eksplisit menonaktifkan eksekusi skrip di Internet Explorer, atau jika konfigurasi keamanan saat ini untuk halaman Web tidak memperbolehkannya.