【发布时间】:2016-03-05 21:20:13
【问题描述】:
我正在使用 jQuery DataTables 1.9.4。在尝试使用数据表模块时,我收到了上述错误。通过 SO,我看到很多人建议使用大写字母 DataTable({}) 而不是小写字母 dataTable({}),但仍然出现错误。
var table = $("#example1").DataTable();
$('#example1 tbody').on('click', 'tr', function () {
var data = table.row(this).data();
});
注意这是一个 ASP.NET MVC 项目
<table id="example1" class="table table-bordered table-striped">
<thead>
<tr>
<th>@Html.DisplayNameFor(model => model.FirstName)</th>
<th>@Html.DisplayNameFor(model => model.Surname)</th>
<th>@Html.DisplayNameFor(model => model.MiddleName)</th>
<th>@Html.DisplayNameFor(model => model.DateOfBirth)</th>
<th>@Html.DisplayNameFor(model => model.Department)</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>@Html.DisplayFor(modelItem => item.FirstName)</td>
<td>@Html.DisplayFor(modelItem => item.Surname)</td>
<td>@Html.DisplayFor(modelItem => item.MiddleName)</td>
<td>@Html.DisplayFor(modelItem => item.DateOfBirth)</td>
<td>@Html.DisplayFor(modelItem => item.Department)</td>
</tr>
}
</tbody>
</table>
【问题讨论】:
-
你的DataTable是否被正确初始化了?向我们展示表格 html
-
@EricGuan 我已经用表格标记更新了我的问题
-
我很确定您遇到了缓存问题。确保您的浏览器正在加载正确版本的 JS。即使您的标记或其他内容无效,即使您在初始化时收到令人讨厌的警报 - 您仍然会收到带有您可以使用的 API 的表引用。
-
@davidkonrad 我启动浏览器时始终打开 Chrome 的开发工具,因此缓存不是问题
-
@kolexinfos,如果你没有关闭缓存也没关系 :) 网络 -> 禁用缓存 -> 重新加载
标签: javascript jquery asp.net-mvc twitter-bootstrap datatables