asp.net-mvc – ASP.NET MVC中的CSS和Javascript相对路径混乱
发布时间:2020-12-15 18:32:27 所属栏目:asp.Net 来源:网络整理
导读:我的JavaScript路径在此页面上工作: http://localhost:53049/ 但不在这个页面上: http://localhost:53049/Home/Messages 原因是相对路径不同,前者要求(“js / …”),后者需要(“../../ js / …”)。 我将我的javascript包含在我的Site.Master文件中: sc
我的JavaScript路径在此页面上工作:
http://localhost:53049/ 但不在这个页面上: 原因是相对路径不同,前者要求(“js / …”),后者需要(“../../ js / …”)。 我将我的javascript包含在我的Site.Master文件中: <script type="text/javascript" src="js/jquery.jqGrid.js"></script> <script type="text/javascript" src="~/js/jquery.jqGrid.js"></script> <script type="text/javascript" src="<%= this.ResolveClientUrl("~/Scripts/jquery-1.2.6.js") %>"></script> 如何解决这个相对路径的疯狂,即ASP.NET MVC中最好的做法是在Site.Master中设置CSS / Javascript路径,以便每个视图都可以工作,无论该视图的URL是多么深入。 附录: 看来,对于Index视图,任何路径都会工作,奇怪的是: <script type="text/javascript" src="/Scripts/jquery-1.2.6.js"></script> <script type="text/javascript" src="../../Scripts/jquery-1.2.6.js"></script> <script type="text/javascript" src="../../../Scripts/jquery-1.2.6.js"></script> 但是对于任何其他页面(具有更深的URL的页面),这些页面都不起作用。 这里发生了什么?我们如何在Site.Master中设置一次Javascript路径,它们适用于所有页面? 附录二: 原来只是jqgrid javascript文件(而不是jquery文件)的问题,显然是在该文件里面引用其他javascript文件并被困惑: <script type="text/javascript" src="<%= Url.Content ("~/js/jquery.jqGrid.js") %>"></script> 解决方法
您还可以使用Url.Content方法调用来确保路径设置正确。
可以找到例子here。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- asp.net-core-mvc – 如何在启动时初始化应用程序
- asp.net – 如何在.net vb中发送POST?
- asp.net-mvc – 基本MVC:“modelItem =>”做什么
- 如何设置起始页面在webconfig文件在asp.net c#
- asp.net – 如何在标记中使用扩展和实用程序方法
- 实体框架 – EF 7中的db.database.ExecuteSQLCom
- asp.net – 地理位置网络服务建议
- asp.net – 在请求结束前触发Application_EndReq
- asp.net-mvc – 使用StructureMap / ASP.MVC / V
- 什么时候不是在asp.net中使用runat =“server”?
热点阅读