单击一个复选框后选中Jquery复选框

时间:2016-06-14 05:08:57

标签: jquery

我有一张桌子。在桌子旁边我有两个<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>个元素 感谢。

1 个答案:

答案 0 :(得分:1)

$("#tableList").on("change",'input[data-table-name]', function () {   
    $(this).closest("tr").find('input[data-table="' + tableName + '"]').prop("checked", $(this).prop('checked'));
});