如何在ASP.NET项目中正确引用JavaScript文件?

前端之家收集整理的这篇文章主要介绍了如何在ASP.NET项目中正确引用JavaScript文件?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一些引用javascript文件页面.

该应用程序存在于虚拟目录中,即http://localhost/MyVirtualDirectory/MyPage.aspx

所以本地我引用文件如下:

<script src="/MyVirtualDirectory/Scripts/MyScript.js" type="text/javascript"></script>

但是生产设置不同.该应用程序在生产中作为自己的网站存在,因此我不需要包含对虚拟目录的引用.这个问题是我需要修改包含javascript引用的每个文件,所以它看起来如下所示:

<script src="../Scripts/MyScript.js" type="text/javascript"></script>

我尝试在我的本地设置中以这种方式引用文件,但它不起作用.

我完全错了吗?有人可以告诉我我需要做什么吗?

谢谢

解决方法

Previous answers似乎假设Scripts目录始终作为应用程序根目录的子目录存在.如果这个假设是正确的,并且如果页面也在根目录下,那么您的两个早期标记可以简单地:
<script src="Scripts/MyScript.js" type="text/javascript"></script>

但是我读到的第二个例子是Scripts并不总是应用程序根目录的子目录(因为开头的../会提升一个级别,因此Scripts将成为应用程序根目录的对等体).也就是说,你确实说第二个例子不起作用. :-)但如果确实如此,我强烈建议调整一个环境或另一个环境以使相对路径一致,然后始终使用上面的相对路径.

据我所知,使用ResolveUrl的唯一原因是应用程序中的页面是否在文件夹结构中,并且标记可能出现在根目录中的页面中或“子目录”中的页面中.如果是这样,您可以在两种情况下使用ResolveUrl,因此您有一个锚点.我从不以这种方式创作,我始终确保我知道页面在层次结构中的位置(如果需要有层次结构)并使用适当的相对路径作为当前文档.

猜你在找的asp.Net相关文章