当前位置:首页 > jquery

jquery全选

2026-01-16 14:56:25jquery

jQuery实现全选功能的方法

使用jQuery实现全选功能可以通过监听复选框的点击事件,动态控制其他复选框的状态。以下是几种常见实现方式:

jquery全选

基础全选/取消全选

通过监听全选复选框的change事件,设置其他复选框的选中状态与其一致:

jquery全选

$('#selectAll').change(function() {
    $('.item-checkbox').prop('checked', $(this).prop('checked'));
});

联动状态更新

当子选项全部选中时自动勾选全选复选框,部分选中时保持全选复选框的中间状态:

$('.item-checkbox').change(function() {
    var allChecked = $('.item-checkbox:checked').length === $('.item-checkbox').length;
    var anyChecked = $('.item-checkbox:checked').length > 0;

    $('#selectAll').prop('checked', allChecked);
    $('#selectAll').prop('indeterminate', anyChecked && !allChecked);
});

表格行全选示例

针对表格场景的全选实现,同时可添加行高亮效果:

$('#selectAll').click(function() {
    var isChecked = $(this).is(':checked');
    $('.row-checkbox').prop('checked', isChecked);
    $('table tr').toggleClass('selected', isChecked);
});

$('.row-checkbox').click(function() {
    $(this).closest('tr').toggleClass('selected', $(this).is(':checked'));
});

注意事项

  • 使用prop()而非attr()操作复选框状态,因为prop()能正确反映动态变化
  • 事件委托适用于动态生成的元素:$(document).on('change', '.item-checkbox', function() {...})
  • 对于大量DOM操作,建议使用事件委托提高性能

完整示例代码

<input type="checkbox" id="selectAll"> 全选
<div class="checkbox-group">
    <input type="checkbox" class="item-checkbox"> 选项1
    <input type="checkbox" class="item-checkbox"> 选项2
    <input type="checkbox" class="item-checkbox"> 选项3
</div>

<script>
$(function() {
    // 全选控制
    $('#selectAll').change(function() {
        $('.item-checkbox').prop('checked', this.checked);
    });

    // 子选项影响全选状态
    $('.item-checkbox').change(function() {
        var allChecked = $('.item-checkbox').length === $('.item-checkbox:checked').length;
        $('#selectAll').prop('checked', allChecked);
    });
});
</script>

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

相关文章

vue 实现全选

vue 实现全选

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

jquery下载

jquery下载

jQuery下载方法 官方渠道下载 访问jQuery官网(https://jquery.com/),点击首页的“Download”按钮。页面提供两个版本: Production:压缩版(min…

jquery官网

jquery官网

jQuery 官网地址 jQuery 的官方网站是 https://jquery.com/。该网站提供以下核心内容: 下载 jQuery:提供最新版本的 jQuery 库(压缩版和未压缩版),支持直…

jquery实现vue

jquery实现vue

jQuery 和 Vue.js 是两种不同理念的前端工具,前者基于 DOM 操作,后者基于数据驱动。虽然 Vue 可以替代 jQuery 的大部分功能,但若需在 Vue 中临时集成 jQuery 或模…

jquery文档

jquery文档

以下是关于 jQuery 文档的核心内容和资源整理,便于快速查阅和使用: jQuery 官方文档 官网地址:jQuery Official Documentation 内容分类:API 参考:包含…

jquery作用

jquery作用

jQuery的作用概述 jQuery是一个快速、简洁的JavaScript库,主要用于简化HTML文档遍历、事件处理、动画设计和Ajax交互等操作。其核心目标是让开发者以更少的代码完成更多功能,同时解…