温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

WebKit.Net winform程序中c#与js互调实验传参和返回值异常的示例分析

发布时间:2021-09-18 11:04:22 来源:亿速云 阅读:132 作者:柒染 栏目:编程语言

今天就跟大家聊聊有关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互调实验传参和返回值异常的示例分析有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI