1、创建个Winform项目。 2、在From1上增加一个文本框一个按钮。 3、在解决方案中创建一个test.js文件。 test.js代码如下: function sayHello(str) { return "Hello," + str; } 4、进入Form1.cs编码后台代码。 private void button1_Click(object sender, EventArgs e) { string path = AppDomain.CurrentDomain.BaseDirectory + "test.js"; string str2 = File.ReadAllText(path); string fun = string.Format(@"sayHello('{0}')" ,this.textBox1.Text.Trim()); string result = ExecuteScript(fun, str2); MessageBox.Show(result); } /// <summary> /// 执行JS /// </summary> /// <param name="sExpression">参数体</param> /// <param name="sCode">JavaScript代码的字符串</param> /// <returns></returns> private string ExecuteScript(string sExpression, string sCode) { MSScriptControl.ScriptControl scriptControl = new MSScriptControl.ScriptControl(); scriptControl.UseSafeSubset = true; scriptControl.Language = "JScript"; scriptControl.AddCode(sCode); try { string str = scriptControl.Eval(sExpression).ToString(); return str; } catch (Exception ex) { string str = ex.Message; } return null; }
参考:http://www.cnblogs.com/xdpxyxy/archive/2013/06/11/3132097.html
使用WebBrowser的 InvokeScript 调用前端方法
function callMe(arg1, arg2) { return "arg1 is "+arg1+" and arg2 is "+arg2+"!"; } object[] args = {"argString1", "argString2"}; webBrowser1.Document.InvokeScript("callMe",args);