当我生成一个MVC5应用程序时,_Layout.cshtml有 @Scripts.Render
在文件的最后 @RenderBody()
。如果我将.js添加到使用jquery的index.cshtml中,我会感到害怕“$
是未定义的“错误。
我知道解决这个问题的唯一方法是移动 @Scripts.Render
到了 <head>
部分。
什么是正确的方法?
提前致谢!
当我生成一个MVC5应用程序时,_Layout.cshtml有 @Scripts.Render
在文件的最后 @RenderBody()
。如果我将.js添加到使用jquery的index.cshtml中,我会感到害怕“$
是未定义的“错误。
我知道解决这个问题的唯一方法是移动 @Scripts.Render
到了 <head>
部分。
什么是正确的方法?
提前致谢!
@Scripts.Render
应该在 底部 的页面。否则,您将有可能访问脚本运行时尚未加载的页面元素。
编辑:
如果要包含自定义脚本文件,有两种方法:
1。在里面 BundleConfig.cs,为您的脚本添加一个新的包
*bundles.Add(new ScriptBundle("~/bundles/UserScripts").Include("~/Scripts/MyScripts.js"));*
接下来,在 _Layout.cshtml,在jQuery bundle之后呈现脚本包:
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
@* Render the custom bundles *@
@Scripts.Render("~/bundles/UserScripts")
2。 或者添加一个新的脚本部分到您的 Index.cshtml 文件:
@section scripts {
<script src="~/Scripts/MyScripts.js"></script>**
}
@Scripts.Render
应该在 底部 的页面。否则,您将有可能访问脚本运行时尚未加载的页面元素。
编辑:
如果要包含自定义脚本文件,有两种方法:
1。在里面 BundleConfig.cs,为您的脚本添加一个新的包
*bundles.Add(new ScriptBundle("~/bundles/UserScripts").Include("~/Scripts/MyScripts.js"));*
接下来,在 _Layout.cshtml,在jQuery bundle之后呈现脚本包:
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
@* Render the custom bundles *@
@Scripts.Render("~/bundles/UserScripts")
2。 或者添加一个新的脚本部分到您的 Index.cshtml 文件:
@section scripts {
<script src="~/Scripts/MyScripts.js"></script>**
}