我有一张桌子。在桌子旁边我有两个<td>
。第一个<td>
有一个复选框,第二个<td>
有一些部分也包含复选框。点击第一个{{1}的复选框它应该检查其他<td>
的所有复选框。这是使用数据表的代码。
<td>
点击第一个复选框后,这是检查复选框的代码。
for (var i = 0; i < tmpColumns.length; i++) {
var obj = new Object();
var table = "";
obj.title = tmpColumns[i].toUpperCase();
obj.data = tmpColumns[i];
obj.defaultContent = "";
columns.push(obj);
if(type == "table" && i == 0) {
obj.render = function (data, type, row, meta) {
table = row.name;
select = '<section> <label class="checkbox" style="padding-left: 1em;"><input type="checkbox" id = "checkAll" " data-table-name="' + table + '">' + table + ' <i></i></label></section>';
return select;
}
}
if(type == "table" && i == 1) {
obj.render = function (data, type, row, meta) {
table = row.name;
for (var j = 0; j < data.length; j++) {
var column = table + "." + data[j];
ele = ele + '<section> <label class="checkbox" style="padding-left: 1em;"><input type="checkbox" class="addToQuery" data-col="' + column + '" data-table="' + table + '"><i></i>' + data[j] + '</label></section>';
}
return ele;
};
break;
}
}
我想检查同一个$("#tableList").on("change",'input[data-table-name]', function () {
var bool = $(this).prop('checked');
var tableName = $(this).attr("data-table-name");
$('input[data-table="' + tableName + '"]').prop("checked", bool);
});
中的特定复选框。但它检查所有<tr>
个元素
感谢。
答案 0 :(得分:1)
$("#tableList").on("change",'input[data-table-name]', function () {
$(this).closest("tr").find('input[data-table="' + tableName + '"]').prop("checked", $(this).prop('checked'));
});