我有一个asp.net应用程序,其中包含位于多个文件夹中的页面。我的.js文件也在一个“JS”文件夹中,我在主页的头部添加了他们的引用,如:
<script type="text/javascript" src="JS/jquery.min.js"></script>
现在,当我在主页上时,脚本加载正常。但是,当我在另一个文件夹(例如物理)中的其他页面上时,路径会被追加,因此我收到错误:
无法加载资源:服务器响应状态为404 (未找到)
我的图片路径和<a>
标签也发生了类似的事情。
现在我想给根路径提供类似的路径:
~/JS/VerticalMenu.js
但是这个~
并没有把我带到我的应用程序的根源。我是否需要设置~
应该导致的位置?如果是,那么在哪里以及如何?
答案 0 :(得分:5)
@Charlie Kilian答案是一个可行的解决方案,但您也可以在html页面的头部base tag为页面中的所有相对网址指定基本网址。
<head>
<base href="http://www.yourdomain.com/anyvirtualdirectory/" />
</head>
答案 1 :(得分:1)
试试这个:
<script type="text/javascript"
src="<%=Page.ResolveUrl("~/JS/VerticalMenu.js")%>"></script>
答案 2 :(得分:0)
如果是ASP.NET应用程序,您可以通过在路径前加~/
来访问根目录:
<script src="~/common/scripts/safeguard.common.js" type="text/javascript"></script>
您还可以尝试使用/
:
<script src="/common/scripts/safeguard.common.js" type="text/javascript"></script>