Jquery 未呈现捆绑脚本文件。
脚本文件名:Jquery 未呈现捆绑脚本文件。,jquery,asp.net-mvc,resourcebundle,Jquery,Asp.net Mvc,Resourcebundle,脚本文件名: jquery.transit.min.js 该文件位于“脚本”文件夹中 bundles.Add(new ScriptBundle("~/bundles/jquery") .Include("~/Scripts/jquery-{version}.js")); bundles.Add(new ScriptBundle("~/bundles/jqueryui") .Include("~/Scripts/jquery-ui-{version}.js"));
jquery.transit.min.js
该文件位于“脚本”文件夹中
bundles.Add(new ScriptBundle("~/bundles/jquery")
.Include("~/Scripts/jquery-{version}.js"));
bundles.Add(new ScriptBundle("~/bundles/jqueryui")
.Include("~/Scripts/jquery-ui-{version}.js"));
bundles.Add(new ScriptBundle("~/bundles/jqueryval")
.Include("~/Scripts/jquery.unobtrusive*", "~/Scripts/jquery.validate*"));
bundles.Add(new ScriptBundle("~/bundles/jtransit")
.Include("~/Scripts/jquery.transit*"));
在我的视图中
@Scripts.Render("~/bundles/jquery","~/bundles/jtransit")
@Scripts.Render("~/bundles/jqueryui")
@Scripts.Render("~/bundles/jqueryval")
呈现的HTML
<script src="/Scripts/jquery-1.8.3.js"></script>
<script src="/Scripts/jquery-ui-1.9.2.js"></script>
<script src="/Scripts/jquery.unobtrusive-ajax.js"></script>
<script src="/Scripts/jquery.validate.js"></script>
<script src="/Scripts/jquery.validate.unobtrusive.js"></script>
jquery.transit.min.js
不会被渲染。我遗漏了什么?我想可能是因为您的文件只有.min版本
从您的输出中,我可以看到您正在运行
地点。我猜捆绑程序正在寻找一个非精简文件
如果您要进行发布构建,那么它将被捆绑在OK中
我建议得到一个非缩小版的运输文件
包括在脚本文件夹中。如果做不到这一点,就做一个
缩小版本的副本,但文件名中没有.min。从
MVC4
开始,在调试模式下,JavaScript文件或CSS文件的任何缩小版本都将被忽略。正如ngm所建议的,您需要从重命名文件
jquery.transit.min.js
对,
或者,您可以修改bundles.IgnoreList,以允许呈现最小化的文件,如图所示。我必须在应用程序启动时执行此操作:
BundleTable.EnableOptimizations = true;
确保你没有使用IE 8。我在那个浏览器中绑定失败,但在Chrome或Firefox中效果很好 在我的例子中,Visual Studio 2013刚刚认为缺少绑定css文件,它在解决方案资源管理器中的文件名上方显示了黄色问号
只需双击所有这些可能丢失的文件,Visual Studio就会找到它们,黄色的问题将标记为Discover,捆绑将像一个符咒一样重新开始工作。如果上述问题都不能解决您的问题,那么您可能错过了这一行
BundleConfig.RegisterBundles(BundleTable.Bundles);
从Global.asax.cs文件中,如果您开始使用捆绑,请查看此网站:
在我的例子中,我试图使用同名的脚本包和样式包 BundleConfig.cs:
bundles.Add(new ScriptBundle("~/bundles/custom")
.Include("~/Scripts/custom.js"));
bundles.Add(new StyleBundle("~/bundles/custom")
.Include("~/CSS/custom.css"));
_Layout.cshtml:
@Scripts.Render("~/bundles/custom")
@Styles.Render("~/bundles/custom")
这不管用。配置中添加的最后一个bundle仍然存在,并且@Scripts.Render(“~/bundles/custom”)
只呈现一个空行
我正在使用MVC 5.2.3。无法相信ASP.NET会使用这种技巧。没有错误,只是默默地失败!!另外,如果捆绑包虚拟路径包含一个点,它将在开发期间工作,但不适用于已发布的站点。添加(新脚本包(“~/Scripts/jquery.validate”)。包括(“~/../Scripts/jquery.validate.*));这解决了我的问题。没有任何线索,只是没有包括剧本!我删除了ev.min和所有的文件,但是为什么微软决定忽略绑定min文件呢?绑定是在服务器端创建的,所以浏览器不应该有什么区别
@Scripts.Render("~/bundles/custom")
@Styles.Render("~/bundles/custom")