如我有一个JS文件为
Client.js
里面有
alert("网站名称为:CSDN");
页面引用为
<script type="text/javascript" src="/js/Client.js"></script>
--------------------------------------------------------------------
但后来这个网站名称写为后台数据库保存,也就是为动态的了,然后js里面要用得
我只能改为
Client.aspx
alert("<%= Z.Tools.WebSiteName %>");
页面引用为
<script type="text/javascript" src="/js/Client.aspx"></script>
---------------------------------------------------------------------
问:
如何让
<%= Z.Tools.WebSiteName %>
这段代码在js文件中生效谢谢

解决方案 »

  1.   

    Client.aspx 页面:<script>
    var serverValue="<%= Z.Tools.WebSiteName %>";
    </script>
    //下面在导入/Client.js ,这样 就可以使用这个变量!浏览器从上往下解析的
    <script type="text/javascript" src="/js/Client.js"></script> 
    或者 直接导入 
    <script type="text/javascript" src="/js/Client.aspx"></script> Client.aspx 页面后台Respones.write("var serverValue="+Z.Tools.WebSiteName+";");
    ...// 输出js 逻辑代码 当然拼接字符串用stringBuilder 性能高serverValue.End();
      

  2.   

    Client.aspx 页面:<script>
    var serverValue="<%= Z.Tools.WebSiteName %>";
    </script>
    //下面在导入/Client.js ,这样 就可以使用这个变量!浏览器从上往下解析的
    <script type="text/javascript" src="/js/Client.js"></script> 
    或者 直接导入 
    <script type="text/javascript" src="/js/Client.aspx"></script> Client.aspx 页面后台Respones.write("var serverValue="+Z.Tools.WebSiteName+";");
    ...// 输出js 逻辑代码 当然拼接字符串用stringBuilder 性能高Respones.End();
      

  3.   

    这个是不可能放到Js文件中的。如果该JS文件只在一个页面中引用,则可以在该Aspx页面声明一个变量,var name='<%= ..%>'.
    然后把Js的alert改成("网站名称为:"+name);
    即可。
    如果多个页面引用该Js文件,只需要在母版页中声明一个变量,可以先不赋值,该需要的页面为该变量赋值。JS中一样引用该变量名称。