当前位置:首页 > jquery

jquery 全选

2026-04-08 01:32:34jquery

jQuery 实现全选功能

使用 jQuery 实现全选功能通常涉及监听全选复选框的点击事件,并根据其状态设置其他复选框的选中状态。

HTML 结构示例

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

jQuery 代码实现

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

$('.item').click(function() {
  if ($('.item:checked').length === $('.item').length) {
    $('#selectAll').prop('checked', true);
  } else {
    $('#selectAll').prop('checked', false);
  }
});

实现原理

  1. 全选控制
    监听全选复选框的点击事件,当被点击时获取其选中状态,并将该状态同步到所有子项复选框。

  2. 子项控制全选状态
    监听每个子项复选框的点击事件,检查所有子项是否都被选中。如果是,则设置全选复选框为选中状态;否则取消全选复选框的选中状态。

注意事项

  • 使用 prop() 方法而非 attr() 方法操作复选框的选中状态,因为 prop() 更可靠且性能更好。
  • 如果页面内容是动态加载的,需要使用事件委托(on() 方法)来绑定事件。

动态内容示例

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

$(document).on('click', '.item', function() {
  if ($('.item:checked').length === $('.item').length) {
    $('#selectAll').prop('checked', true);
  } else {
    $('#selectAll').prop('checked', false);
  }
});

扩展功能

如果需要实现部分选中时全选复选框显示不确定状态(indeterminate),可以通过以下代码实现:

jquery 全选

$('.item').click(function() {
  const checkedCount = $('.item:checked').length;
  const totalCount = $('.item').length;

  $('#selectAll').prop('indeterminate', checkedCount > 0 && checkedCount < totalCount);
  $('#selectAll').prop('checked', checkedCount === totalCount);
});

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

相关文章

jquery特效

jquery特效

jQuery 常见特效实现方法 淡入淡出效果 使用 fadeIn() 和 fadeOut() 方法实现元素的渐显和渐隐效果。可通过参数控制动画持续时间(毫秒)和缓动函数。 $("#element")…

jquery 滑块

jquery 滑块

jQuery 滑块实现方法 使用 jQuery 实现滑块功能可以通过多种方式完成,包括使用原生 jQuery 或结合插件(如 jQuery UI)。以下是几种常见实现方法: 使用 jQuery UI…

jquery 插入html

jquery 插入html

jQuery 插入 HTML 的方法 jQuery 提供了多种方法来动态插入 HTML 内容到 DOM 中。以下是几种常用的方法: append() 将内容插入到选定元素的内部末尾。 $("#…

jquery的

jquery的

jQuery 简介 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画设计和 Ajax 交互。它的核心理念是“写得更少,做得更多”(Write Le…

jquery 获取

jquery 获取

jQuery 获取元素的方法 jQuery 提供了多种方法来获取 DOM 元素,以下是常用的几种方式: 通过 ID 获取元素 使用 $("#id") 可以获取指定 ID 的元素。例如: $("#m…

jquery实现

jquery实现

以下是关于jQuery实现的常见应用场景及方法,分为核心功能模块说明: DOM操作 使用$()选择器获取元素后,可通过链式调用方法操作DOM: $('#element').html('新内容').…