zoukankan      html  css  js  c++  java
  • C#使用技巧之调用JS脚本(转)

    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);
  • 相关阅读:
    Powerdesigner数据库建模--概念模型--ER图【转】
    oralce闪回
    DBA
    linux socket使用经验总结
    寒假学习笔记1:结构化程序设计
    寒假作业2:简化电梯设计elevator
    鹤发银丝映日月,丹心热血沃新花——忆三位良师
    走廊泼水节
    种树
    P2938 [USACO09FEB]股票市场Stock Market
  • 原文地址:https://www.cnblogs.com/shy1766IT/p/7076913.html
Copyright © 2011-2022 走看看