我的js文件在根目录的JS目录中(/JS/common.js)
我想在aspx页面的html中通过Request.ApplicationPath来找到我的js文件,但我这样写:
  <script language="javascript" src="<%=Request.ApplicationPath%>/JS/common.js"></script>
貌似不行,似乎"<%= %>"不能写在<script>标签中,请问有什么方法可实现?我现在已知的解决这个问题的方法有如下两个:
方法一:
  <script id="jsLoad" language="javascript"></script>
  <script language="javascript">
    document.getElementById("jsLoad").src = "<%=Request.ApplicationPath%>/JS/common.js";
  </script>方法二:
  <script language="javascript">
    document.write("<" + "script language='javascript' src='<%=Request.ApplicationPath%>/JS/Common.js'" + "></" + "script");
  </script>(很奇怪,方法二中write中的字符串必须分开写,否则页面不认,似乎是<script>标签不能嵌套的原因)我想知道的是还有没有其他的方法?比如用<link>标签?我曾试过这样写:
  <link type="text/javascript" href="<%=Request.ApplicationPath%>/JS/Common.js">
但貌似也不行。但我印象中似乎曾有见过用<link>标签引用js文件的例子(也许不是<link>标签,但肯定不是我们常用的<script>的方法),还请高手们指教

解决方案 »

  1.   

    src="\<%=Request.ApplicationPath%>\JS\common.js"
      

  2.   

    楼上的,sorry,不行。。不知道你是不是用的VS的IDE?我用的是VS.NET 2003,当在页面的HTML模式下敲入"<%= %>"时,IDE会自动将前后两头用黄色高亮显示。但是,唯独在<script>标签中只有前面的"<%"黄色高亮了,后面的"%>"并不黄色高亮。你可以试试。。
      

  3.   

    是我魅力不够?还是这个标题不够吸引人?Why米人回答聂。
      

  4.   

    1. 使用RegisterClientScriptBlock。2. 在设计器上放入 LiteralControl,运行时给它的text属性赋值。3. <script runat=server id=ABC>.....</script>,运行时给它的 innerText赋值。