如何在外部js文件中使用服务器端脚本来获取对dom元素的引用?
以下在用作内联脚本时按预期工作,但在将其移动到外部js文件时返回null。
$("#<%= gridResults.ClientID %>");
答案 0 :(得分:11)
您需要一个可以创建JavaScript变量的内联脚本块。应在外部JavaScript文件之前添加此块。完成此操作后,您可以在外部JavaScript文件中引用该变量。
<script type="text/javascript">
var grid = $("#<%= gridResults.ClientID %>");
</script>
<script type="text/javascript" src="path/to/my.js"></script>
答案 1 :(得分:1)
您不能放#<%= gridResults.ClientID %>
,因为gridresults.ClientID特定于该asp.net页面。
你可以这样做:
<stript src="yourfile" type="text/javascript"> <!--link to external js file-->
<script type="text/javascript">
var grid = $("#<%= gridResults.ClientID %>");
yourfunction (grid);
</script>
答案 2 :(得分:1)
如果你是使用CssClass属性的网格上的唯一类,你应该能够访问网格而不必知道它的clientID是什么。
答案 3 :(得分:0)
你想要发生的事情不能。外部javascript文件不会被ASP.NET页面的代码解析,因此ASP.NET无法使用它的功能。