点击事件不起作用

时间:2012-09-05 08:18:03

标签: javascript jquery

Chrome中的

,没有错误,没有警告,甚至没有信息。 它只是不起作用。

 $(document).ready(function () {
        var cbxAdmins = $("input[name^=hasAdmin][type=checkbox]");
        for (var i = 0; i < cbxAdmins.Length; i++) {

            cbxAdmins[i].click(function () {
                var checkAll = this.checked;
                var permiCheckboxes = $(this).parents("tr:first").find(':checkbox');

                if (checkAll) {
                    $(permiCheckboxes).attr('checked', true);
                }
                else {
                    $(permiCheckboxes).attr('checked', '');
                }
            });
        }


    });

1 个答案:

答案 0 :(得分:4)

你不需要在数组中的所有元素之间进行for循环,jQuery足够聪明,可以单独应用click事件。试试这个:

$(document).ready(function () {
    $("input[name^=hasAdmin][type=checkbox]").click(function () {
        $(this).closest("tr").find('[type=checkbox]').prop('checked', this.checked);
    });
});

我还清理了一点逻辑,感谢Fabricio Matte。