当前位置:首页 > JavaScript

js实现全选反选

2026-03-01 01:40:04JavaScript

实现全选与反选功能

全选和反选是表单操作中常见的功能,可以通过JavaScript动态控制复选框的状态。以下是两种典型实现方式:

基础DOM操作实现

// 获取全选复选框和子复选框
const selectAll = document.getElementById('selectAll');
const checkboxes = document.querySelectorAll('.item-checkbox');

// 全选逻辑
selectAll.addEventListener('change', function() {
  checkboxes.forEach(checkbox => {
    checkbox.checked = this.checked;
  });
});

// 子复选框逻辑
checkboxes.forEach(checkbox => {
  checkbox.addEventListener('change', function() {
    selectAll.checked = [...checkboxes].every(c => c.checked);
  });
});

反选功能扩展

// 反选按钮事件
document.getElementById('invertSelect').addEventListener('click', function() {
  checkboxes.forEach(checkbox => {
    checkbox.checked = !checkbox.checked;
  });
  updateSelectAllState();
});

// 更新全选状态函数
function updateSelectAllState() {
  selectAll.checked = [...checkboxes].every(c => c.checked);
}

注意事项

  • 确保HTML结构包含全选复选框和带有统一class的子复选框
  • 事件委托方式更适合动态生成的列表
  • 现代框架如Vue/React可通过数据绑定更简洁地实现
<!-- 基础HTML结构示例 -->
<input type="checkbox" id="selectAll">全选
<button id="invertSelect">反选</button>
<div class="item-list">
  <input type="checkbox" class="item-checkbox">选项1
  <input type="checkbox" class="item-checkbox">选项2
</div>

性能优化建议

对于大型列表建议使用事件委托 考虑添加防抖处理频繁操作 可结合本地存储保存选择状态

js实现全选反选

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

相关文章

js实现验证码

js实现验证码

实现验证码的JavaScript方法 生成随机验证码 使用Math.random()生成随机字符串,结合数字和字母: function generateCaptcha() { const ch…

js实现全选

js实现全选

实现全选功能的方法 在JavaScript中实现全选功能通常涉及监听全选复选框的点击事件,并根据其状态控制其他复选框的选中状态。以下是几种常见的实现方式: 基础DOM操作实现 通过获取所有目标复选框…

js分组实现

js分组实现

分组实现方法 在JavaScript中,可以通过多种方式实现数组或对象的分组操作。以下是几种常见的方法: 使用Array.prototype.reduce() 通过reduce方法可以轻松实现数组分…

js实现点击显示和隐藏

js实现点击显示和隐藏

实现点击显示和隐藏的JavaScript方法 使用classList.toggle切换类名 通过添加/移除CSS类控制元素的显示与隐藏,需提前在CSS中定义隐藏样式(如display: none)。…

js类实现

js类实现

使用类实现 JavaScript 功能 在 JavaScript 中,类(Class)是一种语法糖,基于原型继承机制。通过 class 关键字可以更直观地定义对象模板。 基本类定义 class…

js实现图

js实现图

JavaScript 实现图的常用方法 在 JavaScript 中,图(Graph)可以通过多种方式实现,常见的包括邻接表(Adjacency List)和邻接矩阵(Adjacency Matrix…