HtmlDocument.InvokeScript メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
HTML ページで定義されたアクティブ スクリプト関数を実行します。
オーバーロード
InvokeScript(String) |
HTML ページで定義されたアクティブ スクリプト関数を実行します。 |
InvokeScript(String, Object[]) |
HTML ページで定義されたアクティブ スクリプト関数を実行します。 |
例
次のコード例では、Web ページ内のスクリプトの内容を実行します。 このコード例では、次の Web ページを読み込む必要があります。
<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)
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
パラメーター
- scriptName
- String
呼び出されるスクリプト メソッドの名前。
戻り値
アクティブ スクリプト呼び出しによって返されたオブジェクト。
例
次のコード例では、Web ページ内のスクリプトの内容を実行します。 このコード例では、 という名前WebBrowser1
の アプリケーションに が存在WebBrowserし、次の Web ページが読み込まれている必要があります。
<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
注釈
によって InvokeScript 返されるオブジェクトの基になる型は異なります。 呼び出された Active Scripting 関数が、文字列や整数などのスカラー データを返す場合は、文字列として返されます。 JScript または VBScript の演算子を使用して作成されたオブジェクトなど、スクリプトベースの new
オブジェクトを返す場合は、 型 Object
になります。 (このようなオブジェクトを呼び出す場合は、 を呼び出GetTypeして を使用InvokeMemberします)。や TABLE
などの DIV
HTML DOM 要素を返す場合は、 型Object
になります。プロジェクト参照をMSHTML.DLLに追加した場合は、その特定のアンマネージ DOM 型にキャストされます。
JScript や VBScript など、ユーザーのコンピューターにインストールされている任意の Active Scripting 言語で記述された関数を呼び出すことができます。
InvokeScriptユーザーが Internet Explorer でスクリプトの実行を明示的に無効にした場合、または Web ページの現在のセキュリティ構成で許可されていない場合、 は何も実行しません。
適用対象
InvokeScript(String, Object[])
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
パラメーター
- scriptName
- String
呼び出されるスクリプト メソッドの名前。
- args
- Object[]
スクリプト メソッドに渡す引数。
戻り値
アクティブ スクリプト呼び出しによって返されたオブジェクト。
例
次のコード例では、Web ページ内のスクリプトの内容を実行します。 このコード例では、 という名前WebBrowser1
の アプリケーションに が存在WebBrowserし、次の Web ページが読み込まれている必要があります。
<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 返されるオブジェクトの基になる型は異なります。 呼び出された Active Scripting 関数が、文字列や整数などのスカラー データを返す場合は、文字列として返されます。 JScript または VBScript の演算子を使用して作成されたオブジェクトなど、スクリプトベースの new
オブジェクトを返す場合は、 型 Object
になります。 (このようなオブジェクトを呼び出す場合は、 を呼び出GetTypeして を使用InvokeMemberします)。や TABLE
などの DIV
HTML DOM 要素を返す場合は、 型Object
になります。プロジェクト参照をMSHTML.DLLに追加した場合は、その特定のアンマネージ DOM 型にキャストされます。
JScript や VBScript など、ユーザーのコンピューターにインストールされている任意の Active Scripting 言語で記述された関数を呼び出すことができます。
ユーザーが Internet Explorer でスクリプトの実行を明示的に無効にした場合、または Web ページの現在のセキュリティ構成で許可されていない場合、このメソッドは何も実行しません。
適用対象
.NET