Jquery选中所有复选框

Jquery Check all checkbox

本文关键字:复选框 Jquery      更新时间:2023-12-16

为什么我的check-all按钮只工作一次,而在第三次点击时不工作。check all按钮只在第一次点击时起作用。我检查了dom及其更新,但视图确实检查了。问题的原因是什么?

FIDDLE

jQuery('.sp_country').click(function () {
    var checkbox = $(this).find(":checkbox"),
        checked = checkbox.is(":checked");
    checkbox.prop("checked", !checked);
});
jQuery('.sp_country input:checkbox').on('click', function (e) {
    e.stopImmediatePropagation();
    var checked = (e.currentTarget.checked) ? false : true;
    e.currentTarget.checked = (checked) ? false : checked.toString();
});
jQuery('#bt_checkbox').click(function (e) {
    e.stopImmediatePropagation();
    if (jQuery(this).val() === 'Uncheck All') {
        jQuery('#country input:checkbox').removeAttr('checked');
        jQuery(this).val('Check All');
    } else {
        jQuery('#country input:checkbox').attr('checked', 'checked');
        jQuery(this).val('Uncheck All');
    }
});

fiddle Demo

更改

jQuery('#country input:checkbox').attr('checked', 'checked');

jQuery('#country input:checkbox').prop('checked', true);


使用.pr()

读取.pr()与.attr()