当前位置:首页 > jquery

jquery全选全不选

2026-03-17 07:10:05jquery

jQuery 实现全选/全不选功能

通过 jQuery 可以轻松实现复选框的全选和全不选功能。以下是常见的实现方法:

HTML 结构示例

<input type="checkbox" id="checkAll"> 全选/全不选
<br>
<input type="checkbox" class="item"> 选项1
<input type="checkbox" class="item"> 选项2
<input type="checkbox" class="item"> 选项3

方法1:基础实现

jquery全选全不选

$('#checkAll').click(function() {
    $('.item').prop('checked', this.checked);
});

方法2:带反向检测

$('#checkAll').click(function() {
    $('.item').prop('checked', this.checked);
});

$('.item').click(function() {
    $('#checkAll').prop('checked', 
        $('.item:checked').length === $('.item').length
    );
});

方法3:使用 change 事件

jquery全选全不选

$('#checkAll').change(function() {
    $('.item').prop('checked', $(this).is(':checked'));
});

$('.item').change(function() {
    $('#checkAll').prop('checked',
        $('.item').length === $('.item:checked').length
    );
});

注意事项

  • 使用 prop() 方法而不是 attr() 来操作复选框状态
  • 全选框和选项框需要有明确的类或ID区分
  • 反向检测确保当手动取消某些选项时,全选框状态相应更新

扩展功能

// 部分选中时全选框显示不确定状态
$('.item').change(function() {
    var allChecked = $('.item:checked').length === $('.item').length;
    var someChecked = $('.item:checked').length > 0;

    $('#checkAll').prop('checked', allChecked);
    $('#checkAll').prop('indeterminate', someChecked && !allChecked);
});

以上代码可以根据实际需求进行调整,适应不同的应用场景和UI设计。

标签: 全选不选
分享给朋友:

相关文章

vue 实现全选

vue 实现全选

实现全选功能的方法 在 Vue 中实现全选功能通常涉及以下关键步骤: 数据绑定与状态管理 使用 v-model 绑定全选复选框的状态,并通过计算属性或方法管理子项的选中状态。例如: data()…

vue实现全选 单选

vue实现全选 单选

Vue实现全选与单选功能 在Vue中实现全选和单选功能通常涉及数据绑定、事件处理和计算属性的使用。以下是两种常见的实现方式: 基于数组的复选框实现 <template> <…

vue el实现全选

vue el实现全选

Vue Element UI 实现全选功能 使用 Vue 和 Element UI 实现表格全选功能,可以通过 el-table 和 el-checkbox 组件结合实现。以下是具体实现方法: 基础…

vue实现单选全选

vue实现单选全选

实现单选与全选功能 在Vue中实现单选和全选功能,可以通过数据绑定和计算属性来完成。以下是一个完整的实现方案: 数据准备 data() { return { items: […

vue的table实现全选

vue的table实现全选

实现全选功能的基本思路 在Vue中实现表格全选功能,通常需要结合v-model指令绑定复选框状态,并通过计算属性或方法处理全选逻辑。以下是具体实现方式: 基础实现方法 数据准备 定义表格数据和选中…

vue实现全选不全选

vue实现全选不全选

实现全选/全不选功能 在Vue中实现全选/全不选功能通常涉及以下步骤: 数据绑定 创建响应式数据存储选中状态和选项列表: data() { return { items: […