zoukankan      html  css  js  c++  java
  • 如何把.js文件编译成dll供页面调用?

    1.在解决方案中添加一个新项目(类库:JSControl)

    2.在新项目中添加要用的JS脚本(JScript1.js)

    脚本的内容:

    function testAlert() {
        alert("Hello!");
    }

    3.右键点击JScript1.js,使Build Action为Embedded Resource(也就是右击属性:将生成操作改为"嵌入的资源")

    4.在JSControl项目的AssemblyInfo.cs文件添加一行:(注意JSControl.JScript1.js,JSControl是js所在项目的命名空间)

    //定义组件内的内嵌资源的元数据属性
    [assembly: System.Web.UI.WebResource("JSControl.JScript1.js", "application/x-javascript")]

    注意:这边要增加个引用:System.Web.dll

    5.在JSControl项目中添加一个注册客户端脚本的类:ReferenceScript.cs

    namespace JSControl
    {
        public class ReferenceScript: System.Web.UI.WebControls.WebControl
        {
            protected override void OnPreRender(EventArgs e)
            {
                if (this.Page != null)
                {
                    ClientScriptManager manager = this.Page.ClientScript;
                    manager.RegisterClientScriptResource(typeof(ReferenceScript), "JSControl.JScript1.js");
                }
                base.OnPreRender(e);
            }
        }
    }

    6.在网站项目中引用JSControl项目,编译后生成JSControl.dll

    7.在要调用脚本的页面注册JSControl.dll

    <%@ Register Assembly="JSControl" Namespace="JSControl" TagPrefix="zhi" %>

    8.引用脚本

    <zhi:ReferenceScript ID="rs1" runat ="server"/>

    <asp:Button ID="btnReadXml" runat="server" Text="ReadXml" OnClick="btnReadXml_Click"
                    OnClientClick="testAlert();" />

    9.效果图

    -------长沙程序员技术交流QQ群:428755207-------
  • 相关阅读:
    Php7安装pdo_pgsql,pgsql扩展
    Laravel 实时监听打印 SQL
    windows 下安装docker依赖boot2docker镜像默认用户和密码
    win7下安装virtual box后启动报错
    phpstorm 不能自动打开上次的历史文件
    BZOJ1001 [BeiJing2006]狼抓兔子 平面图转对偶图,最小割转最短路
    BZOJ1098 [POI2007]办公楼biu
    POJ1410 Intersection
    HDU3336 Count the string
    HDU2594 Simpsons’ Hidden Talents [KMP]
  • 原文地址:https://www.cnblogs.com/qq4004229/p/1819429.html
Copyright © 2011-2022 走看看