我想在母版页上动态注册jquery脚本, 但它不起作用,任何人都可以帮助我吗?
我从我的Web应用程序的根目录中获取了一个文件夹Materials / Scripts, 我的母版页看起来像
public partial class Application : System.Web.UI.MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{
ScriptManager.RegisterClientScriptInclude(this, this.GetType(), "jquery",
VirtualPathUtility.ToAbsolute("~/Materials/Scripts/jquery-1.4.2.min.js"));
}
}
但这永远不会奏效。使用
<script src="../../Materials/Scripts/jquery-1.4.2.min.js" type="text/javascript"></script>
工作正常。
答案 0 :(得分:1)
当您使用ScriptManager
添加脚本引用时,它会将SCRIPT
标记添加到BODY
页面的HTML
,而不是HEAD部分。如果在$(document).ready()
上运行任何jquery代码,它将无效,因为尚未加载jQuery。
查看aspx
页面生成的HTML,查看jQuery代码的位置以及引用<script>
的{{1}}代码的位置。
解决此问题的一种方法是在文档底部添加您的javascript而不是jQuery
。
如果您仍希望将代码保留在HEAD
中,另一个选项是使用window.onload而不是HEAD
,例如:
$(document).ready()