今天就跟大家聊聊有关WebKit.Net winform程序中c#与js互调实验传参和返回值异常的示例分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
currentPage.browser.IsScriptingEnabled = true;
//currentPage.browser.StringByEvaluatingJavaScriptFromString("var _elm = document.getElementById('testelement');var _evt = document.createEvent('MouseEvents');_evt.initEvent('click', true, true);_elm.dispatchEvent(_evt);");
Console.WriteLine("888888888888888888888");
Console.WriteLine("currentPage.browser.DocumentText=" + currentPage.browser.DocumentText);
//currentPage.browser.StringByEvaluatingJavaScriptFromString("document.getElementById('testelement').click()");
//currentPage.browser.Document.InvokeScriptMethod("test",new object[]{"name","address"});//出异常,不能这样调用,要如下面这样调用
//currentPage.browser.StringByEvaluatingJavaScriptFromString("f()");
//string returnvalue = (string)currentPage.browser.Document.InvokeScriptMethod("f");
//Console.WriteLine("returnvalue=" + returnvalue);
//currentPage.browser.Document.InvokeScriptMethod("test", new object[] { "name", "address" });
//string msg = currentPage.browser.StringByEvaluatingJavaScriptFromString("function GetElement() {return document.getElementsByTagName(\"testelement\")[0].outerHTML};");
//currentPage.browser.Invoke((MethodInvoker)delegate { currentPage.browser.Document.InvokeScriptMethod("GetElement"); });
object msg = currentPage.browser.Document.InvokeScriptMethod("GetElement");
Console.WriteLine("msg=" + msg);
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<p id="testelement" >Hello, World!</p>
<div><p>A</p><p>B</p><p>C</p></div>
hello world spring boot3111 window.alert("Name is " + name + "; address is " + address);
function GetElement() { return document.getElementsByTagName("testid")[0].outerHTML};
<script type="text/javascript">
function f() { document.title="abc";window.open('https://www.baidu.com', 'myWindow'); }
function test(name, address) {
document.title=name;
}
function GetElement() {return document.getElementsByTagName('testelement')[0].innerText};
</script>
<div id="testid">
<span >test1</span> test2
</div>
<a href="javascript:alert(testid.innerHTML)">innerHTML内容</a>
<a href="javascript:alert(testid.innerText)">innerText内容</a>
<a href="javascript:alert(testid.outerHTML)">outerHTML内容</a>
</body>
</html>
wbkit.net实验发现:不管是c#给js函数传什么参数或者说js函数给c#返回什么值,总是异常。只有c#单纯调用js中函数且函数名不带括号才能成功。
看完上述内容,你们对WebKit.Net winform程序中c#与js互调实验传参和返回值异常的示例分析有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://my.oschina.net/u/2963604/blog/5009009