今天就跟大家聊聊有关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互调实验传参和返回值异常的示例分析有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。