Javascript 在MVC3中使用Url.Content加载JS文件
我试图在MVC 3中使用以下命令加载javascript,但脚本未加载:Javascript 在MVC3中使用Url.Content加载JS文件,javascript,asp.net-mvc,asp.net-mvc-3,load,Javascript,Asp.net Mvc,Asp.net Mvc 3,Load,我试图在MVC 3中使用以下命令加载javascript,但脚本未加载: <script src="<%: Url.Content("~/Content........ 注意加载脚本时,我倾向于使用自定义助手 下面的代码就是这样做的,并且有一个额外的布尔参数,当脚本不是应用程序的本地脚本时,例如在CDN上,可以使用该参数 public static MvcHtmlString Script(this HtmlHelper helper, string src, bool
<script src="<%: Url.Content("~/Content........
注意加载脚本时,我倾向于使用自定义助手
下面的代码就是这样做的,并且有一个额外的布尔参数,当脚本不是应用程序的本地脚本时,例如在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));
}
然后,可以在视图中调用帮助器,如下所示:
<%: Html.Script("jquery.validate.min.js") %>
或:
您应该首先添加程序集(命名空间)
然后简单地呈现任何这样的脚本
@Scripts.Render("~/Content/Scripts/test.js")
不要忘记首先包括名称空间
Using System.Web.Optimization;
@RamaDesai只需查看您的输出,即使使用@Rama Desai,您也会遇到一些其他问题。您是否收到控制台错误?你的HTML有效吗?HTML有效。如果我在地址栏中键入:I get nothing,但该文件夹中存在文件I get error Html不包含“Script”的定义,则需要在创建脚本方法的web.config中包含名称空间:
,并完全刷新网页。
<%: Html.Script("http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.6.2.js", false) %>
System.Web.Optimization
@Scripts.Render("~/Content/Scripts/test.js")
Using System.Web.Optimization;