ASP.NET - 用于引用.CSS和.JS的路径

Mik*_*ole 13 javascript c# asp.net jquery

我在项目的根目录中有一个母版页.我在整个项目中以及引用此母版页的子文件夹中都有内容页面.如果我总是希望它们相对于根目录,那么引用我的.CSS和.JS文件的正确方法是什么?

我现在就是这样做的:

link href="/common/css/global.css"
script src="/common/javascript/global.js"

但这打破了联系.我尝试没有前导"/"但是在子文件夹中我的页面上没有用.

Mit*_*ers 19

我会用类似的东西

Server.ResolveClientUrl("~/common/css/global.css")
Run Code Online (Sandbox Code Playgroud)

这将随时为您提供合适的网址.

例:

根据评论,这将是完全使用.

<link type="text/css" rel="stylesheet" 
    href='<%= Server.ResolveClientUrl("~/common/css/global.css") %>' />
Run Code Online (Sandbox Code Playgroud)

根据评论,其他验证用法,没有"错误CS1061:'System.Web.HttpServerUtility'不包含定义"错误:

    <script type="text/javascript" 
src="<%= Page.ResolveUrl("~/Scripts/YourScript.js") %>" ></script>
Run Code Online (Sandbox Code Playgroud)

同样重要的是始终放置结束标记.

  • 另外我使用ResolveUrl vs ResolveClientUrl,客户端url会计算相对于你现在认为的路径,即 - 如果你在上面它会使用../../,ResolveUrl版本总会做一个绝对的路径.这可能看起来不重要,但有一个关于*cont*的错误 (2认同)