JavaScript实现复选框全选与全不选逻辑
作者:交互手记时间:2026-10-23 20:08:22浏览:199
本文通过一个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复选框操作汇总。
以上就是本文的全部内容,希望对读者的学习有所帮助,也欢迎大家继续支持本站。
作者最新文章
JS怎么实现页面强制刷新
2026-11-05 14:53:38
点击JS链接直接运行不下载?前端实现.js文件强制下载的三种方法
2026-11-05 12:12:23
怎么封装一个通用的JS创建元素辅助函数
2026-11-05 11:41:41
Swiper.js 怎么监听滑动结束并获取当前索引
2026-11-05 10:57:15
HTML、CSS和JS的关系:Web前端三件套怎么协作
2026-11-04 15:41:40
