我有一个HTML表格,其中第一列是复选框,我在表格上方有一个超级链接,如果他们点击这个就“全部检查”我需要循环遍历表格中的每一行并选中分配给的复选框该行,该表是在页面加载“Databind”上构建的。
到目前为止,这是我的jQuery,我将其称为“全部检查”链接:
$('#HypSelectAll').click(function() {
var count = $('#gvPerformanceResult>tbody>tr').length; //Count the amount of rows in the HTML table
for (i = 0; i < count; i++) {
}
});
我现在不确定如何引用gvPerformanceResult列....找到名为“chkExportToExcel”的复选框,此表可能有1-25行。有人可以帮助我给出一个起点吗?
答案 0 :(得分:5)
无需手动执行循环。让jQuery做它的事情:
$('#HypSelectAll').click(function () {
$('#gvPerformanceResult')
.find('input[type="checkbox"]')
.prop('checked', true);
});
如果整个表格中还有其他复选框,并且确实必须具体,请尝试以下操作:
$('#HypSelectAll').click(function () {
$('#gvPerformanceResult')
.find('> tbody > tr > td:first-child > input[type="checkbox"]')
.prop('checked', true);
});
但我真的不能想到一个可以保证这样的事情。如果你不得不诉诸于此,你可能在HTML结构中遇到了一些更深层次的问题。
答案 1 :(得分:1)
您不需要像这样循环,只需告诉jQuery找到表格内的复选框并将其标记为已选中(假设表格中的唯一复选框是您想要包含在“全选”中的复选框)。
$('#HypSelectAll').click(function () {
$("#gvPerformanceResult").find("input[type=checkbox]").prop("checked", true);
});