.net - javascript src的相对url?

时间:2011-05-25 20:48:06

标签: .net

我想要包含一个像这样的javascript文件

<script type="text/javascript" runat="server" src="~/file.js"></script>

我的想法是我希望通过相对路径而不是绝对路径包含file.js,我希望.NET找出合适的目录(即它是./或../,还是.. /../等......)。

但是当我尝试上面的代码时,我得到了编译错误。

请问我是否正确包含了一个javascript文件?

3 个答案:

答案 0 :(得分:5)

你可以试试这个......

剃刀:

<script type="text/javascript" src="@Url.Content("~/file.js")"></script>

的WebForms:

<script type="text/javascript" src="<%=Page.ResolveUrl("~/file.js")%>"></script>

答案 1 :(得分:1)

请记住,path-'relativity'对浏览器来说最重要。路径必须与您正在查看的PAGE的地址相关。这就是为什么控件和母版页可能与使用它们的页面不在同一个文件夹中的原因是为了操纵它们包含的资源路径以便它们工作。

所以在你的情况下,删除runat = part,如果file.js位于应用程序的根目录,你应该好好去。

答案 2 :(得分:0)

如果你正在使用MVC,你可以使用

<script type="text/javascript" src="@Url.Content("~/file.js")" />