我的javascript路径在此页面上运行: http:// localhost:53049 /
但不在此页面上: http:// localhost:53049/Home/Messages
原因是相对路径不同,前者需要("js/...")而后者需要("../../ js/...").
我在我的Site.Master文件中包含了我的javascript:
我如何解决这个相对路径的疯狂,即ASP.NET MVC在Site.Master中设置CSS/Javascript路径的最佳实践方式是什么,这样无论视图的URL多么深,它们都适用于每个视图.
附录:
似乎对于Index视图,任何路径都可以工作,奇怪的是:
但对于任何其他页面(具有更深URL的页面),这些都不起作用.
这里发生了什么?我们如何在Site.Master中设置一次Javascript路径,它们适用于所有页面?
ADDENUM II:
事实证明只有jqgrid javascript文件(而不是jquery文件)的问题,显然在该文件中它引用其他javascript文件并且混淆:
Kieron.. 15
您还可以使用Url.Content方法调用来确保正确设置路径.
例子可以在这里找到.
您还可以使用Url.Content方法调用来确保正确设置路径.
例子可以在这里找到.
关于CSS文档中使用的路径:
/Content/site.css
Body {background-image:url('background.jpg');}
CSS文档中的相对路径与CSS文档相关,而不是与显示的文档相关.
这些信息让我有些头疼.