在.js文件中使用ASP.Net标签?

时间:2011-06-15 20:29:02

标签: javascript asp.net

是否可以在javascript文件中嵌入<% ... %>标记并让它呈现相应的服务器端代码?怎么办呢?

4 个答案:

答案 0 :(得分:14)

这个过程实际上与你的想法相反。

您创建一个* .aspx页面,该页面呈现为JavaScript文件。然后,您可以在<script>代码中引用该* .aspx页面:

<script type="text/javascript" src="someJavaScript.aspx"></script>

答案 1 :(得分:6)

是的,这是可能的,但它不是一个JS文件,它将是一个带有Javascript而不是html的aspx文件。

在你的页面中,为了引用它,你会这样做:

<script type="text/javascript" src="myPage.aspx"></script>

答案 2 :(得分:2)

我将对你想要完成的事情作出一些假设。很可能你有一个javascript文件,需要访问服务器上的一些信息。假设您需要会话中的一些内容,如果它是一个aspx页面,您会看起来像

<script type="text/javascript">
var username = '<%= Session["username"] %>';
var account_num = '<%= Session["account_num"] %>';
</script>

显然这不会在.js文件中起作用,因为它永远不会通过页面生命周期来处理aspx页面。但是,您不需要像其他人可能建议的那样将整个.js文件转换为.aspx页面。还有很多其他方法可以将这些数据公开给你的js代码。我列出2。

  1. 在您的网页回复中发出上述<script>(可能使用<asp:ContentPlaceHolder />
  2. 创建一个webservice(甚至可以是一个简单的.ashx),返回var username = ...甚至更好的返回json

答案 3 :(得分:1)

是的,只需制作一个包含Javascript的常规网页即可。

但是,它可能不会像您期望的那样。 Javascript文件的缓存时间比页面长。由于浏览器可能不会每次都从服务器请求文件,因此每次使用该文件时都不会执行该文件。