这是我对我的桌子的看法。当我回发到我的控制器时,我的模型会给我 ListUsers 中的项目并设置“InGroup”= true(如果选中)的属性,以及它被检查的 UserId。这完全正常。
<table id="tblAvailableFranchisees">
<thead>
<tr>
<th>Franchisee</th>
<th>Email Address</th>
<th><input type="checkbox" /></th>
</tr>
</thead>
<tbody>
@for (int i = 0; i < Model.ListUsers.Count; i++)
{
<tr id="@Model.ListUsers[i].UserId">
@Html.HiddenFor(m => m.ListUsers[i].UserId)
<td>@Html.DisplayFor(m => m.ListUsers[i].DisplayName)</td>
<td>@Html.DisplayFor(m => m.ListUsers[i].EmailAddress)</td>
<td>@Html.CheckBoxFor(m => m.ListUsers[i].InGroup)</td>
</tr>
}
</tbody>
</table>
现在我已经用它实现了 JQuery DataTable。
$(document).ready(function () {
var oTable = $('#tblAvailableFranchisees').dataTable();
{);
DataTable 正确呈现,使我能够对列进行排序、选择页面和选择每页的记录数。
然后我可以通过复选框检查用户并发布,传递给我的控制器的模型给了我想要的东西。
但是,当我进入表格中的不同页面并发布时,传递给我的控制器的模型现在是一个空集合。我已经确认它与分页有关,但似乎无法弄清楚为什么模型会返回一个空集合而不返回表中的项目。
对任何有助于调查此问题的想法持开放态度。提前致谢