【分享】同名复选框的全选与全不选
今天在做一个asp后台管理页面,后台管理需要批量快速删除某些内容,也需要随便选一些条目来删除,于是想到了使用复选框(Checkbox),由asp生成的复选框使用的同一个名字。我百度了一下,的确查到不少内容,但皆不合用。
原因有二:
1.试运行语法错误,不能使用
2.针对的是有规律的不相同名字的复选框
于是,查阅相关资料终于写了一个可以用的(很简单不要笑话了):
function checkall()
{
for (var i=0;i<document.getElementsByName("id").length;i++) {//id即表单中Checkbox的名字,跟form的名字无关
var temp=document.getElementsByName("id")
;
temp.checked=document.form1.checkbtn.checked; //document.form1.checkbtn.checked是我表单中的一个参考项,你使用的话可以直接用true(全部选择)、false(全部不选)
}
}
给予同样的道理,同名反映选框组的是否已有选择判定的JS代码可如下:
function checkdata()
{
var havecheck=false;
for (var i=0;i<document.getElementsByName("id").length;i++) {
if(document.getElementsByName("id").checked)
{ havecheck=true;
break;
}
}
if(!havecheck)
{ alert("请选择你要删除的项目!");
return false;
}
return true;
}
我这里完整的参考代码如下:
<script language="javascript">
function checkall()
{
for (var i=0;i<document.getElementsByName("id").length;i++) {
var temp=document.getElementsByName("id");
temp.checked=document.form1.checkbtn.checked;
}
}
</script>
<form id="form1" name="form1" method="post" action="">
<input name="id" type="checkbox" id="id" value="4" />
<input name="id" type="checkbox" id="id" value="3" />
<input name="id" type="checkbox" id="id" value="2" />
<input name="id" type="checkbox" id="id" value="1" /> <label>
<input name="checkbtn" type="checkbox" id="checkbtn" onclick="javascript:checkall();" value="checkbox"/>
全选/全不选</label>
</form>
祝大家愉快啊!