代码之家  ›  专栏  ›  技术社区  ›  rahul

在外部javascript文件中嵌入ASP.Net代码

  •  4
  • rahul  · 技术社区  · 16 年前

    我有个密码

    var mySession = "<%= Session["MyID"] %>";
    alert ( mySession );
    

    当我把这段代码放在我的aspx页面的脚本标记中时,它工作得很好。但它在外部js文件中不起作用。我无法找出问题所在。

    3 回复  |  直到 7 年前
        1
  •  4
  •   Darin Dimitrov    16 年前

    服务器端脚本( <%= %> aspx 页。外部javascript是静态文件。要实现所需功能,可能需要在aspx文件中声明全局js变量:

    var mySession = "<%= Session["MyID"] %>";
    

    alert(mySession);
    

    另一种选择是使用AJAX。设置一个服务器端脚本,该脚本将返回所需的会话值,并从外部js文件调用此脚本。

        2
  •  2
  •   G-Wiz RameshVel    16 年前

    达林的建议是最好的,但是如果出于某种原因,您不想使用通过aspx页面上定义的变量将数据传递到外部js代码中的约定,那么实际上您可以将外部js文件设置为aspx页面。例如,可以将其命名为“External.js.aspx”,并在@Page指令中设置ContentType=“text/javascript”。然后,您可以在javascript源代码中使用ASP.NET做任何您希望做的事情。

        3
  •  0
  •   fredrik    16 年前

    一个很好的方法是在外部Js文件中添加所有需要的值,就是在aspx=>Js中为每个需要的值设置一个input type=“hidden”。

    在javascript窗口上,onload有一个方法,可以查找所有输入字段并将它们存储在JS对象中。