大家好,又见面了,我是你们的朋友全栈君。
HtmlDocument.InvokeScript 方法 (String, Object[])
這個方法和.net1.2的execScript方法相似的。execScript在2.0中已經取消了。
注意:此方法在 .NET Framework 2.0 版中是新增的。
执行在 HTML 页面中定义的动态脚本函数。
命名空间:System.Windows.Forms 程序集:System.Windows.Forms(在 system.windows.forms.dll 中)
<script type=”text/Javascript”> var ExpCollDivStr=ExpCollDivStr; ExpCollDivStr = ExpCollDivStr + “ctl00_LibFrame_ctl03e58441c,”; var ExpCollImgStr = ExpCollImgStr; ExpCollImgStr = ExpCollImgStr + “ctl00_LibFrame_ctl03img,”; </script> 语法
Visual Basic(声明)
Public Function InvokeScript ( _
scriptName As String, _
args As Object() _
) As Object
Visual Basic(用法)
Dim instance As HtmlDocument
Dim scriptName As String
Dim args As Object()
Dim returnValue As Object
returnValue = instance.InvokeScript(scriptName, args)
C#
public Object InvokeScript (
string scriptName,
Object[] args
)
C++
public:
Object^ InvokeScript (
String^ scriptName,
array<Object^>^ args
)
J#
public Object InvokeScript (
String scriptName,
Object[] args
)
JScript
public function InvokeScript (
scriptName : String,
args : Object[]
) : Object
scriptName
要调用的脚本方法的名称。
args
活动脚本调用所返回的对象。
<script type=”text/Javascript”> var ExpCollDivStr=ExpCollDivStr; ExpCollDivStr = ExpCollDivStr + “ctl00_LibFrame_ctl103bf9fc9,”; var ExpCollImgStr = ExpCollImgStr; ExpCollImgStr = ExpCollImgStr + “ctl00_LibFrame_ctl10img,”; </script> 备注
InvokeScript 返回的对象的基础类型可能会不同。如果所调用的活动脚本函数返回标量数据,如字符串或整数,其类型将作为 String 返回。如果返回基于脚本的对象,例如,使用 JScript 或 VBScript 的 new 运算符创建的对象,其类型将为 Object。(可以通过调用 GetType 并使用 InvokeMember 来调用此类对象。)如果返回 HTML DOM 元素,如 DIV 或 TABLE,其类型将为 Object;但是,如果已添加对 MSHTML.DLL 的项目引用,则它将强制转换为特定的非托管 DOM 类型。
您可以调用使用用户计算机上安装的任何活动脚本语言(包括 JScript 和 VBScript)编写的任何函数。
如果用户在 Internet Explorer 中显式禁用了脚本执行,或者网页的当前安全配置禁止脚本执行,则此方法将不会执行任何操作。
<script type=”text/Javascript”> var ExpCollDivStr=ExpCollDivStr; ExpCollDivStr = ExpCollDivStr + “ctl00_LibFrame_ctl144d07413,”; var ExpCollImgStr = ExpCollImgStr; ExpCollImgStr = ExpCollImgStr + “ctl00_LibFrame_ctl14img,”; </script> 示例
下面的代码示例执行网页中的脚本内容。该代码示例要求应用程序具有一个称为 WebBrowser1 的 WebBrowser,并且您已加载了下面的网页。
<HTML>
<SCRIPT>
function test(name, address) {
window.alert("Name is " + name + "; address is " + address);
}
</SCRIPT>
<BODY>
</BODY>
</HTML>
Visual Basic
Private Sub InvokeTestMethod(ByVal Name As String, ByVal Address As String)
If (Not (WebBrowser1.Document Is Nothing)) Then
Dim ObjArr(1) As Object
ObjArr(0) = CObj(New String(Name))
ObjArr(1) = CObj(New String(Address))
WebBrowser1.Document.InvokeScript("test", ObjArr)
End If
End Sub
C#
private void InvokeTestMethod(String name, String address)
{
if (webBrowser1.Document != null)
{
Object[] objArray = new Object[1];
objArray[0] = (Object)name;
objArray[1] = (Object)address;
webBrowser1.Document.InvokeScript("test", objArray);
}
}
<script type=”text/Javascript”> var ExpCollDivStr=ExpCollDivStr; ExpCollDivStr = ExpCollDivStr + “ctl00_LibFrame_ctl1976f9eed,”; var ExpCollImgStr = ExpCollImgStr; ExpCollImgStr = ExpCollImgStr + “ctl00_LibFrame_ctl19img,”; </script> 平台
Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition
.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求。
<script type=”text/Javascript”> var ExpCollDivStr=ExpCollDivStr; ExpCollDivStr = ExpCollDivStr + “ctl00_LibFrame_ctl217812a2c,”; var ExpCollImgStr = ExpCollImgStr; ExpCollImgStr = ExpCollImgStr + “ctl00_LibFrame_ctl21img,”; </script> 版本信息
受以下版本支持:2.0
<script type=”text/Javascript”> var ExpCollDivStr=ExpCollDivStr; ExpCollDivStr = ExpCollDivStr + “ctl00_LibFrame_ctl227d664f3,”; var ExpCollImgStr = ExpCollImgStr; ExpCollImgStr = ExpCollImgStr + “ctl00_LibFrame_ctl22img,”; </script> 请参见
HtmlDocument 类 HtmlDocument 成员 System.Windows.Forms 命名空间
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/161642.html原文链接:https://javaforall.cn