我正在使用Visual Studio 2012和MVC 4,在我的_Layout.cshtml中,我有以下内容:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/jqueryui")
@Scripts.Render("~/bundles/jqgrid")
@RenderSection("head", required: false)
</head>
<body>
@RenderBody()
@RenderSection("scripts", required: false)
</body>
</html>
在BundleConfig.cs中我有
public class BundleConfig
{
public static void RegisterBundles(BundleCollection bundles)
{
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/jqgrid").Include(
"~/Scripts/jquery.jqGrid.min.js"));
}
}
我已经检查了三次,我的脚本文件夹确实包含了jquery.jqGrid.min.js,但它没有被包含。
我的Html头像:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<link href="/Viper/Content/css" rel="stylesheet"/>
<script src="/Viper/Scripts/jquery-1.8.1.js"></script>
<script src="/Viper/Scripts/jquery-ui-1.8.23.js"></script>
</head>
为什么没有添加这个?
答案 0 :(得分:7)
debug = true时的默认行为是忽略* .min.js(我们正在考虑修复这个问题)。
目前,最简单的方法是将文件重命名为jquery.jqGrid.js
答案 1 :(得分:1)
如果您更改了捆绑包定义:
bundles.Add(new ScriptBundle("~/bundles/jqgrid").Include("~/Scripts/jquery.jqGrid.min.js"));
为:
bundles.Add(new ScriptBundle("~/bundles/jqgrid").Include("~/Scripts/jquery.jqGrid.*"));
它会像伤害一样起作用。
因此,出于调试目的,将加载jquery.jqGrid.src.js,同时在发布配置中运行应用程序时,将加载jquery.jqGrid.min.js。