我正在尝试在一些使用母版页的asp.net页面上使用JQuery,而我在加载JQuery JavaScript文件时遇到了问题。在ASP.NET中使用MasterPage的JQuery
当我包括母版页的标记文件,它工作得很好对在同一个目录中的母版页页:
<script src="jquery/jquery-1.4.2.min.js" type="text/javascript"></script>
但打破了不在页面与母版页在同一目录中。主页面会继承包含它们的页面的路径,所以jquery .js文件的相对路径对于不同的页面是不同的。当然,我不能在主文件中有不同的相对路径,因为只有其中的一个。
我可以使用绝对路径:
<script src="/jquery/jquery-1.4.2.min.js" type="text/javascript"></script>
但如果网站被安装为一个虚拟目录,打破。
我的下一个尝试是使用“〜”来表示网站的根:
<script src="~/jquery/jquery-1.4.2.min.js" type="text/javascript"></script>
但脚本标签不明白了〜”
于是,我就做,它的代码隐藏从的OnInit(),我想:
string url = "~/jquery/jquery-1.4.2.min.js";
url = this.ResolveUrl(url);
Page.ClientScript.RegisterClientScriptInclude("jquery_js", url);
这一点让我的错误时运行的JavaScript JQuery的我有一些JavaScript页面的标记:
$(document).ready(function()
{
...
}
我得到的“$”未定义。我在开始的jquery-1.4.2.min.js中添加了一个警报,并且它正在加载OK,但在.aspx文件中的这一点javascript已经执行之后。
我试过ScriptManager.RegisterClientScriptInclude(),结果相同。
上一个示例实际生成的HTML是什么?包含您的$(document).ready处理程序的脚本标记是否包含它? – Goyuix 2010-12-02 00:07:25
不是。这就是问题所在。 (或者最后一个问题,如果不是主页面的话,我可以把链接放在脚本之前,添加代码隐藏的链接并不能让我控制它们的放置位置 – 2010-12-02 21:19:25