假设我有一个包含多个复选框的客户的表:
@foreach (var item in Model.Clients)
{
<tr class="@highlightRowClass" data-clientnumber="@item.ClientNumber">
<td>
@Html.CheckboxFor(modelItem => item.Checkbox1)
</td>
<td>
@Html.CheckBoxFor(modelItem => item.CheckBox2)
</td>
</tr>
}
我想让一个ajax调用帖子回传给id数组,并带有一个对象,表示是否勾选了一个或两个复选框:
var obj = {
CheckBox1Ticked: true,
Checkbox2Ticked: false,
};
pendingChanges[clientId] = obj ;
如何循环遍历每个表行并使用Jquery填充数组?
答案 0 :(得分:1)
您可以像这样填充数组:
var checkboxData = $('table tr').map(function() {
var $inputs = $(this).find('input');
return { checkbox1Ticked: $inputs.eq(0).prop('checked'), checkbox2Ticked: $inputs.eq(1).prop('checked') };
});
checkboxData
是一个可以根据需要传递/查询的数组:
console.log(checkboxData[0].checkbox1Ticked);