jQuery判断checkbox(复选框)是否被选中以及全选、反选实现代码


以下是一段使用jQuery来判断checkbox是否被选中,并实现全选与反选功能的代码示例。


$(document).ready(function() {
    // 全选功能
    $('#selectAll').change(function() {
        $('input[type="checkbox"]').prop('checked', $(this).is(':checked'));
    });

    // 反选功能
    $('#invertSelection').click(function() {
        $('input[type="checkbox"]').each(function() {
            $(this).prop('checked', !$(this).is(':checked'));
        });
    });

    // 判断单个checkbox是否被选中
    $('input[type="checkbox"]').change(function() {
        if ($(this).is(':checked')) {
            console.log($(this).attr('id') + ' is checked.');
        } else {
            console.log($(this).attr('id') + ' is not checked.');
        }
    });
});

### 说明

1. **全选**:当点击ID为`selectAll`的checkbox时,会触发`change`事件,通过`.prop('checked', $(this).is(':checked'))`将所有checkbox的选中状态设置为与`selectAll`checkbox相同的状态。

2. **反选**:点击ID为`invertSelection`的按钮时,会遍历所有的checkbox,并使用`.prop('checked', !$(this).is(':checked'))`反转它们的选中状态。

3. **单个checkbox选中状态判断**:每当任何一个checkbox的选中状态改变时,会输出该checkbox的ID和它的选中状态。

请确保在HTML中正确设置了`id`属性以匹配上述JavaScript代码中的选择器。例如,全选框可以设置为``,反选按钮可以设置为``,而需要被操作的checkbox则应该具有适当的ID或者可以通过其他选择器(如类名)来定位。