我尝试在 MVC 3 中使用以下内容加载 JavaScript,但脚本未加载:
<script src="<%: Url.Content("~/Content........
如果我使用以下内容加载,那么它就可以工作:
<script src="../../Content......
可能是什么问题
最佳答案
加载脚本时,我倾向于使用自定义助手。
下面的代码执行此操作,并且有一个额外的 bool 参数,当脚本不是您的应用程序本地的(例如在 CDN 上)时可以使用该参数。
public static MvcHtmlString Script(this HtmlHelper helper, string src, bool local = true)
{
if (local) {
src = VirtualPathUtility.ToAbsolute("~/Scripts/" + src);
}
TagBuilder builder = new TagBuilder("script");
builder.MergeAttribute("src", src);
builder.MergeAttribute("type", "text/javascript");
return MvcHtmlString.Create(builder.ToString(TagRenderMode.Normal));
}
然后您可以像这样调用 View 中的助手:
<%: Html.Script("jquery.validate.min.js") %>
或者:
<%: Html.Script("http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.6.2.js", false) %>
关于javascript - 在MVC 3中使用Url.Content加载JS文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8567178/