Javascript 控制 CheckBox 的全选与取消全选

在批量处理列表数据时,往往会用到 CheckBox 的全选与取消全选,虽然她的实现原理很简单,但是对新手来说还是有些难度,本文介绍的方法,触发条件独立,可以全选或取消全选指定 name 的 CheckBox , 同一页面可以有多组供全选的 CheckBox ,功能健全,通用性较强。

Javascript 控制 CheckBox 的全选与取消全选 – 示例

<script type="text/javascript">
<!--
// 说明:Javascript 控制 CheckBox 的全选与取消全选
// 整理:http://www.CodeBit.cn

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>

用法示例:

<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')" />

关于 Artlover

有多年 web 开发经验,擅长领域 PHP / MySQL / CSS / Javascript / Zend Framework ,期望:在分享中共同成长。
此条目发表在 Javascript 分类目录,贴了 , , , , 标签。将固定链接加入收藏夹。

Javascript 控制 CheckBox 的全选与取消全选》有 1 条评论

  1. it 说:

    写的不是太好啊。
    function AllQuery()
    {
    var checkBox=document.getElementById(“QueryAll”);
    var checkBoxAll=document.getElementsByTagName(“input”);
    for(var i = 0 ; i < checkBoxAll.length ; i++)
    {
    if(checkBoxAll[i].type == “checkbox”)
    {
    checkBoxAll[i].checked = checkBox.checked;
    }
    }
    }
    这样一个方法就可以了

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*


*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>