JavaScript实现多组CheckBox全选与取消功能

作者:闭包旅人

时间:2026-10-25

浏览:92

本文介绍一种基于JavaScript的CheckBox全选与取消方案,支持同一页面多组独立操作。通过遍历input元素并匹配name属性,实现指定组的批量选中或取消。代码包含完整的JS函数定义及HTML调用示例,适用于需要分组管理复选框状态的前端场景。

文章目录

JavaScript实现多组CheckBox全选与取消功能

该方法触发条件独立,支持全选或取消指定 name 的 CheckBox,允许同一页面存在多组独立的全选功能,具备高通用性。


界面展示效果如下:


JavaScript实现多组CheckBox全选与取消功能

实际运行效果演示:


<body>  <input type="checkbox" name="test" value="" onclick="if(this.checked==true) { checkAll('test'); } else { clearAll('test'); }" /> 字母全选开关 <input type="checkbox" name="test" value="a" /> a <input type="checkbox" name="test" value="b" /> b <input type="checkbox" name="test" value="c" /> c <input type="checkbox" name="test" value="d" /> d <input type="checkbox" name="test" value="e" /> e <input type="checkbox" name="test" value="f" /> f <input type="checkbox" name="test" value="g" /> g <br> <input type="checkbox" name="num" value="" onclick="if(this.checked==true) { checkAll('num'); } else { clearAll('num'); }" /> 数字全选开关 <input type="checkbox" name="num" value="1" /> 1 <input type="checkbox" name="num" value="2" /> 2 <input type="checkbox" name="num" value="3" /> 3 <br><br> <input type="button" value="选择所有的字母" onclick="checkAll('test')" /> <input type="button" value="清空选中的字母" onclick="clearAll('test')" /> <br><br> <input type="button" value="选择所有的数字" onclick="checkAll('num')" /> <input type="button" value="清空选中的数字" onclick="clearAll('num')" /> </body> </body>

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]


JavaScript 函数定义


具体代码实现如下:

 
<script type="text/javascript">
function checkAll(name) {
var el = document.getElementsByTagName('input');
var len = el.length;
for(var i=0; i<len; i++) {
if((el[i].type=="checkbox") && (el[i].name==name)) {
el[i].checked = true;
} 
} 
} 
function clearAll(name) {
var el = document.getElementsByTagName('input');
var len = el.length;
for(var i=0; i<len; i++) {
if((el[i].type=="checkbox") && (el[i].name==name)) {
el[i].checked = false;
} 
} 
} 
</script>

HTML 结构


具体代码实现如下:

 
<input type="checkbox" name="test" value="" onclick="if(this.checked==true) { checkAll('test'); } else { clearAll('test'); }" /> 字母全选开关
<input type="checkbox" name="test" value="a" /> a
<input type="checkbox" name="test" value="b" /> b
<input type="checkbox" name="test" value="c" /> c
<input type="checkbox" name="test" value="d" /> d
<input type="checkbox" name="test" value="e" /> e
<input type="checkbox" name="test" value="f" /> f
<input type="checkbox" name="test" value="g" /> g
<br />
<input type="checkbox" name="num" value="" onclick="if(this.checked==true) { checkAll('num'); } else { clearAll('num'); }" /> 数字全选开关 <input type="checkbox" name="num" value="1" /> 1
<input type="checkbox" name="num" value="2" /> 2
<input type="checkbox" name="num" value="3" /> 3
<br />
<br />
<input type="button" value="选择所有的字母" onclick="checkAll('test')" /> <input type="button" value="清空选中的字母" onclick="clearAll('test')" /> <br />
<br />
<input type="button" value="选择所有的数字" onclick="checkAll('num')" /> <input type="button" value="清空选中的数字" onclick="clearAll('num')" />

实用工具推荐

电子包浆

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

使用 ›
图片压缩

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

使用 ›
相关文章