日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

C# webBrowser与javascript互调

發布時間:2025/3/21 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C# webBrowser与javascript互调 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

實現步驟:

一、新建一個窗體,加入webBrowser控件

????控件名:webBrowser1

?

二、在窗體后臺代碼加入如下定義

[System.Runtime.InteropServices.ComVisibleAttribute(true)]
public partial class Form1 : Form
{
//...
}

三、加載網頁

????webBrowser1.Navigate(Application.StartupPath + "/UpDateReport.htm");
????webBrowser1.ObjectForScripting = this;??//這句必須,不然js不能調用C#

四、調用腳本方法

/// <summary>
/// 腳本方法
/// </summary>
/// <param name="tag">JS函數名|參數1|參數2</param>
/// <returns></returns>
private object EXEC_JS(System.Windows.Forms.WebBrowser webBrowser, string tag)
{
string[] args = tag.Split('|');
if (args.Length == 1)
{
return webBrowser.Document.InvokeScript(args[0], null);
}
else
{
object[] objects = new object[args.Length - 1];
Array.Copy(args,
1, objects, 0, objects.Length);
return webBrowser.Document.InvokeScript(args[0], objects);
}
}

五、C#調用腳本方法例子,可以有返回值

//JS方法
<script language="javascript">
function js_fun(args)
{
alert(
"我是通過js腳本彈出的。你輸入的內容是:"+args);
return "JAVASCRIPT";
}
</script>
//C#代碼
object returnvalue = EXEC_JS(webBrowser1, "js_fun|參數字符串");
MessageBox.Show(
"js方法返回值是:" + returnvalue.ToString());

六、JS調用C#方法的例子

//C#方法
public string Test(string args)
{
return "你輸入的是:"+args;
}
//JS代碼
<script language="javascript">
window.onload
= function()
{
var CS_returnvalue
= window.external.Test("aaa");
alert(CS_returnvalue);
}
</script>

轉載于:https://www.cnblogs.com/zyx_blog/articles/1993473.html

總結

以上是生活随笔為你收集整理的C# webBrowser与javascript互调的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。