ASP.Net:动态JavaScript路径/ src

时间:2009-11-27 15:01:45

标签: asp.net javascript

我尝试在我的ASP.Net应用程序中创建文件夹(例如所有财务中心/财务部门)。

不,我在MainPage中绑定了一个JavaScript:

<script type="text/javascript" src="Helper/jquery-1.3.2.min.js"></script>

但是当我现在打开〜/ Finance / Payment.aspx时,我收到了一条未找到“Path~ / Finance / Helper / jquery ...”的JavaScript错误。

怎么办?

2 个答案:

答案 0 :(得分:6)

您的路径Helper/jquery-1.3.2.min.js是相对路径。因此,当您进入/Finance时,浏览器正在/Finance/Helper/jquery-1.3.2.min.js中寻找jQuery。

解决这个问题的一个简单方法是使用绝对路径

<script type="text/javascript" src="/Helper/jquery-1.3.2.min.js"></script>

或者您可以使用允许您使用代字号

ScriptManager
<asp:ScriptManager ID="ScriptManager1" runat="server">
    <Scripts>
        <asp:ScriptReference Path="~/Helper/jquery-1.3.2.min.js" />
    </Scripts>
</asp:ScriptManager>

作为最后的手段,如果您遇到ScriptManager问题,也可以这样做

<script type="text/javascript" 
        src="<%= Page.ResolveClientUrl("~/Helper/jquery-1.3.2.min.js") %>">
</script>

答案 1 :(得分:0)

您总是可以在脚本src属性中使用ResolveClientUrl(您需要使用“〜/”将JavaScript文件的路径设为app根相对路径):

<script type="text/javascript" src="<%= ResolveClientUrl("~/Helper/jquery-1.3.2.min.js") %>"></script>