Mvc4数据表在脚本包中不起作用

时间:2016-04-01 12:13:42

标签: asp.net-mvc-4 datatables bundle bundling-and-minification

我在 App_Start / BundleConfig.cs

中有以下代码
    bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                        "~/Scripts/jquery-{version}.js"));

    bundles.Add(new ScriptBundle("~/bundles/datatable").Include(
                    "~/Content/DataTables-1.10.7/media/js/jquery.dataTables.min.js"));

    bundles.Add(new StyleBundle("~/Content/css").Include(
                    "~/Content/site.css", 
                    "~/Content/DataTables-1.10.7/media/css/jquery.dataTables.min.css"));

并在观看/共享/ _Layout.cshtml

@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/datatable")

并且CSS和Datatable不起作用,但是当我添加manualy时

<link href='@Url.Content("~/Content/DataTables-1.10.7/media/css/jquery.dataTables.min.css")' rel="stylesheet" />

<script src='@Url.Content("~/Content/DataTables-1.10.7/media/js/jquery.dataTables.min.js")' type="text/javascript"></script>

它开始起作用了。我做错了什么?

1 个答案:

答案 0 :(得分:0)

从浏览器中检查网页的源代码,并确保;

jquery.dataTables.min.js 正在之后加载 jquery.min.js

_Layout.cshtml 中的顺序更改为:

@Scripts.Render("~/bundles/jquery")    
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/bundles/datatable")

编辑:

它也可能与 web.config 设置有关。

如果您的web.config中有“ Debug = True ”,则最小化的javascript文件不会包含在捆绑包中。

将此添加到 BundleConfig.cs

#if DEBUG
        //by default all minimized files are ignored in DEBUG mode. This will stop that.
        bundles.IgnoreList.Clear();
#endif