如何对表格中的checkbox,进行全选中、部分选中,全不选中的小组件
以下是源文件(在回显时可以调用cbOnclick(obj)方法):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> 如何对表格中的checkbox,进行全选中、部分选中,全不选中的小组件 </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script>
//部分选择时执行
function cbOnclick(obj){
var cbAll=obj.parentNode.parentNode.parentNode.parentNode.parentNode.previousSibling.getElementsByTagName("input")[0];
if(cbAll.indeterminate==false){
cbAll.indeterminate=true;
}
if(checkCB(obj)==1){
cbAll.indeterminate=false;
cbAll.checked=true;
}else if(checkCB(obj)==2){
cbAll.indeterminate=false;
cbAll.checked=false;
}
}
//校验该文本框里,分三种情况 :全选、全不选、部分被选中
function checkCB(obj){
var flag=0;
var oo=obj.parentNode.parentNode.parentNode.parentNode.getElementsByTagName("input");
var k=0;
if(oo!=null&&oo.length>0){
for(var i=0;i<oo.length;i++){
if(oo[i].checked==true){
k++;
}
}
}
if(k==oo.length){//全部被选中
flag=1;
}else if(k==0){//全不选
flag=2;
}else{//部分被选中
flag=0;
}
return flag;
}
//全选
function checkAll(obj){
var cbs=obj.parentNode.nextSibling.getElementsByTagName("input");
if(cbs!=null&&cbs.length>0){
for(var i=0;i<cbs.length;i++){
if(cbs[i].type=='checkbox'){
if(obj.checked==true){
cbs[i].checked=true;
}else{
cbs[i].checked=false;
}
}
}
}
}
</script>
</HEAD>
<BODY>
<center>
<table align='center' border='1' bordercolor='#8CB3E3' cellpadding='0'
cellspacing='0' style='border-collapse: collapse;' width='500px'>
<tr>
<td width="20%">
<input type="checkbox" value="" id="" onclick="checkAll(this)"/>全选
</td>
<td width="80%">
<table id='MultCheckBoxTag'>
<tr id='mcbt_0'>
<td style='width:500'><input type='checkbox' onclick='cbOnclick(this);' value='5' name='myCheckBox'/>选项1</td>
<td style='width:500'><input type='checkbox' onclick='cbOnclick(this);' value='6' name='myCheckBox'/>选项2</td>
<td style='width:500'><input type='checkbox' onclick='cbOnclick(this);' value='7' name='myCheckBox'/>选项3</td>
</tr>
<tr id='mcbt_1'>
<td style='width:500'><input type='checkbox' onclick='cbOnclick(this);' value='8' name='myCheckBox'/>选项4</td>
<td style='width:500'><input type='checkbox' onclick='cbOnclick(this);' value='9' name='myCheckBox'/>选项5</td>
<td style='width:500'><input type='checkbox' onclick='cbOnclick(this);' value='10' name='myCheckBox'/>选项6</td>
</tr>
</table>
</td>
</tr>
</table>
</center>
</BODY>
</HTML>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。