4

是否可以使用一些 C# 变量创建一个 javascript 文件?像这样的东西:

var foo =  <%= CODE_VALUE.foo %>;

或者我是否必须在我包含在该<head>部分中的 usercontrol.ascx 中创建它们?

4

3 回答 3

11

您不能在 .js 文件中包含此代码,因为它不是由 asp.net 编译的,因此不会将其CODE_VALUE.foo转换为代码。

你可以做的是在加载这个你赢得使用的 .js 文件之前放置这个变量,并将它们设置在任何 aspx 或用户控件上。

例如

<script>
 var foo = <%=CODE_VALUE.foo%>;
<script>
<script type="text/javascript" src="fileToUseTheFoo.js">   
</script>

或者,您可以创建一个读取 javascript 文件的处理程序,包含您的自定义变量并根据需要创建完整的 javascript 代码,并将其作为 javascript 发送。

一些相关的:如何在外部 javascript 文件中获取 asp.net 客户端 ID

于 2012-04-26T10:43:53.363 回答
0

不,您不能在 .js 文件中使用服务器端标签。而是在需要它们的页面/控件上创建变量。

于 2012-04-26T10:41:45.360 回答
0

Javascript 文件是静态文件,也由 Web 服务器静态提供,无需使用 ASP.NET 处理它们。

因此,如果您真的想插入该值,您可以创建一个空的 .aspx 页面并在其中包含所有 javascript,然后将 .aspx 页面包含在script src.

但我可能更喜欢使用 Web 服务,每次需要接收值时都可以从 javascript 调用 Web 方法。

于 2012-04-26T10:41:49.547 回答