我在表中的每个tr
中都有一个复选框输入。
我能够使用rows().every()
<table id="CanalsTable" class="table">
<thead>
<tr>
<td></td>
<td>Canal Name</td>
<td>Canal Description</td>
<td></td>
</tr>
</thead>
<tbody>
@foreach (var Canal in Canals) {
<tr id="@Canal.Id">
<td>
<span class="m-list-settings__item-control">
<span class="m-switch m-switch--outline m-switch--icon-check m-switch--brand">
<label>
<input onchange="CanalChanged('@Canal.Id')" type="checkbox" name="enabled-@Canal.Id" id="enabled-@Canal.Id">
<span></span>
</label>
</span>
</span>
</td>
</tr>
}
</tbody>
在文档加载时,我们将一些复选框更改为它们的状态(启用/禁用)
$("enabled-" + Id).prop('checked', true).change();
然后迭代
table.rows().every(function () {
var data = this.data();
var enabled = $("#enabled-" + data.DT_RowId).is(':checked');
console.log(enabled);
});
仅当您当前与选中的复选框位于同一页面时,它才输出true,否则始终输出false。
有什么方法可以获取准确的值?