JavaScript实现复选框全选与全不选逻辑

作者:交互手记

时间:2026-10-23

浏览:200

本文通过一个HTML示例展示了如何使用JavaScript实现复选框的全选与全不选功能。核心逻辑包括获取全选按钮及所有子复选框元素,监听点击事件以同步状态,并在子项变化时根据选中数量自动更新全选按钮的勾选状态,从而完成双向联动。

文章目录

JavaScript实现复选框全选与全不选逻辑

本文通过具体代码示例,展示如何使用JavaScript实现复选框的全选与全不选功能,供读者参考学习。


<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>操作复选框</title>
</head>
<body>

<input type="checkbox" id="quan"> 全选<br>
<input type="checkbox" name="aihao">游戏<br>
<input type="checkbox" name="aihao">睡觉<br>
</body>
</html>
<script type="text/javascript">

 window.onload=function () {

  var firstChecbox = document.getElementById("quan");
  var aihao=document.getElementsByName("aihao");
  //完成全选和全不选
  //当单击全选时使下方的checkbox中的checked属性为true
  firstChecbox.onclick=function () {
   //遍历下方的checkbox
   //使每一个复选框的属性中的checked和全选的属性保持一致即可实现(不完善)
   for (let i = 0; i <aihao.length ; i++) {
    aihao[i].checked=firstChecbox.checked;
   }
  }
  //如果选中的数量和爱好的总数量一致的就把全选给选中,否则不全选
  //为每一个aihao绑定单击事件
  var all=aihao.length;
  for (let i = 0; i < aihao.length; i++) {
   //绑定单击事件
   aihao[i].onclick=function () {
   //定义选中的数量
    var checkedCount=0;
    for (let i = 0; i < aihao.length; i++) {
    //如果爱好选中就把选中的数量+1;
     if (aihao[i].checked){
      checkedCount++;
     }
     //如果选中的数量和总数相当就把全选给勾选
     if (checkedCount==all){
      firstChecbox.checked=true
     }
     else{
      firstChecbox.checked=false;
     }
    }
   }

  }
 }

</script>

如需了解更多关于复选框的操作技巧,可查阅专题:javascript复选框操作汇总、jquery复选框操作汇总。

以上就是本文的全部内容,希望对读者的学习有所帮助,也欢迎大家继续支持本站。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章