如何在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 Core《二》
- asp.net-mvc-4 – 是否可以将MVC Razor视图保存到
- asp.net – Windows EventLog不能超过32766个字符
- asp.net – 在没有完全回发的情况下,在AJAX更新面
- asp.net-mvc-4 – 使用angularjs和ASP.NET MVC
- asp.net-mvc – ASP.NET MVC – 我可以为同一个动
- asp.net-mvc – 实用程序方法可以在MVC剃刀中返回
- asp.net-mvc – 如何构建这个ASP.NET n层解决方案
- asp.net – HTTP PUT在IIS 8.5上失败
- asp.net-mvc – MVC模型绑定:为什么我不能绑定到