HtmlDocument.InvokeScript 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
执行在 HTML 页面中定义的活动脚本函数。
重载
InvokeScript(String) |
执行在 HTML 页面中定义的活动脚本函数。 |
InvokeScript(String, Object[]) |
执行在 HTML 页面中定义的活动脚本函数。 |
示例
下面的代码示例在网页中执行脚本的内容。 代码示例要求已加载以下网页。
<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);
member this.InvokeScript : string -> obj
Public Function InvokeScript (scriptName As String) As Object
参数
- scriptName
- String
要调用的脚本方法的名称。
返回
活动脚本调用所返回的对象。
示例
下面的代码示例在网页中执行脚本的内容。 代码示例要求你在应用程序中调用WebBrowser1
了一个WebBrowser,并且已加载以下网页。
<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 的对象的基础类型将有所不同。 如果调用的活动脚本函数返回标量数据(如字符串或整数),它将作为字符串返回。 如果返回基于脚本的对象(如使用 JScript 或 VBScript 运算符new
创建的对象),则其类型为类型Object
。 (可以通过调用 GetType 和使用 InvokeMember.) 调用此类对象;如果返回 HTML DOM 元素(如 a DIV
或 a TABLE
)类型; Object
如果已向MSHTML.DLL添加了项目引用,则会将其强制转换为其特定的非托管 DOM 类型。
可以调用以用户计算机上安装的任何活动脚本语言编写的任何函数,包括JScript和 VBScript。
InvokeScript如果用户在 Internet Explorer 中显式关闭脚本执行,或者网页的当前安全配置不允许它,则不会执行任何操作。
适用于
InvokeScript(String, Object[])
执行在 HTML 页面中定义的活动脚本函数。
public:
System::Object ^ InvokeScript(System::String ^ scriptName, cli::array <System::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[]
要传递给脚本方法的自变量。
返回
活动脚本调用所返回的对象。
示例
下面的代码示例在网页中执行脚本的内容。 代码示例要求你在应用程序中调用WebBrowser1
了一个WebBrowser,并且已加载以下网页。
<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 的对象的基础类型将有所不同。 如果调用的活动脚本函数返回标量数据(如字符串或整数),它将作为字符串返回。 如果返回基于脚本的对象(如使用 JScript 或 VBScript 运算符new
创建的对象),则其类型为类型Object
。 (可以通过调用 GetType 和使用 InvokeMember.) 调用此类对象;如果返回 HTML DOM 元素(如 a DIV
或 a TABLE
)类型; Object
如果已向MSHTML.DLL添加了项目引用,则会将其强制转换为其特定的非托管 DOM 类型。
可以调用以用户计算机上安装的任何活动脚本语言编写的任何函数,包括JScript和 VBScript。
如果用户在 Internet Explorer 中显式关闭脚本执行,或者网页的当前安全配置不允许,此方法将不执行任何操作。