我有一个带有简单表格的 index.cshtml 文件。我下载了 dataTable 插件的 css 文件和 min js 文件。我将以下代码放在 BundleConfig.cs 中:
bundles.Add(new ScriptBundle("~/bundles/table").Include(
"~/Scripts/jquery.dataTables.min.js"));
bundles.Add(new StyleBundle("~/Content/themes/base/css").Include(
"~/Content/themes/base/jquery.ui.core.css",
"~/Content/themes/base/jquery.ui.resizable.css",
"~/Content/themes/base/jquery.ui.selectable.css",
"~/Content/themes/base/jquery.ui.accordion.css",
"~/Content/themes/base/jquery.ui.autocomplete.css",
"~/Content/themes/base/jquery.ui.button.css",
"~/Content/themes/base/jquery.ui.dialog.css",
"~/Content/themes/base/jquery.ui.slider.css",
"~/Content/themes/base/jquery.ui.tabs.css",
"~/Content/themes/base/jquery.ui.datepicker.css",
"~/Content/themes/base/jquery.ui.progressbar.css",
"~/Content/themes/base/jquery.ui.theme.css",
"~/Content/themes/base/jquery.dataTables.css"));
}
在我的 _Layout.cshtml 中,我有这个:
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/bundles/table")
最后,在我的 index.cshtml 中,我将以下代码放在我的表格上方:
<script type="text/javascript">
$(document).ready(function () {
$('#patients').dataTable();
});
</script>
我注意到当我使用表格运行页面并查看源代码时,我看到底部的 jquery 文件和顶部的脚本,所以我收到错误:
Uncaught ReferenceError: $ is not defined
BundleConfig 是添加新 js 和 css 文件的正确位置吗?如果我不希望它在那里,我该怎么做?为什么jquery脚本在页面底部运行?
我在 _Layout.cshtml 中添加了以下内容:
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/bundles/table")
但现在我得到这个错误:
未捕获的类型错误:对象 [对象对象] 没有方法“数据表”
当我查看源代码时,我看到 dataTables.min.js 不存在,但我已将其包含在 bundles/table 中。