<html>
<head>
<title>this is a test!</title>
</head>
<body>
<h1>This is a Test!</h1>
<form action="" name = "test">
<input name="checkboxfather1" type="checkbox" onClick="selectAll(this,1)">checkbox[1]<br>
<input name="checkboxchild1" type="checkbox" value="1" onClick=gray1(checkboxchild1,checkboxfather1)>checkbox[11]<br>
<input name="checkboxchild1" type="checkbox" value="2" onClick=gray1(checkboxchild1,checkboxfather1)>checkbox[12]<br>
<input name="checkboxchild1" type="checkbox" value="3" onClick=gray1(checkboxchild1,checkboxfather1)>checkbox[13]<br>
<input name="checkboxchild1" type="checkbox" value="4" onClick=gray1(checkboxchild1,checkboxfather1)>checkbox[14]<br>
<input name="checkboxchild1" type="checkbox" value="5" onClick=gray1(checkboxchild1,checkboxfather1)>checkbox[15]<br>
<input name="checkboxfather2" type="checkbox" onClick="selectAll(this,2)">checkbox[2]<br>
<input name="checkboxchild2" type="checkbox" value="1" onClick=gray1(checkboxchild2,checkboxfather2)>checkbox[21]<br>
<input name="checkboxchild2" type="checkbox" value="2" onClick=gray1(checkboxchild2,checkboxfather2)>checkbox[22]<br>
<input name="checkboxchild2" type="checkbox" value="3" onClick=gray1(checkboxchild2,checkboxfather2)>checkbox[23]<br>
<input name="checkboxchild2" type="checkbox" value="4" onClick=gray1(checkboxchild2,checkboxfather2)>checkbox[24]<br>
<input name="checkboxchild2" type="checkbox" value="5" onClick=gray1(checkboxchild2,checkboxfather2)>checkbox[25]<br>
<input name="checkboxfather3" type="checkbox" onClick="selectAll(this,3)">checkbox[3]<br>
<input name="checkboxchild3" type="checkbox" value="1" onClick=gray1(checkboxchild3,checkboxfather3)>checkbox[31]<br>
<input name="checkboxchild3" type="checkbox" value="2" onClick=gray1(checkboxchild3,checkboxfather3)>checkbox[32]<br>
<input name="checkboxchild3" type="checkbox" value="3" onClick=gray1(checkboxchild3,checkboxfather3)>checkbox[33]<br>
<input name="checkboxchild3" type="checkbox" value="4" onClick=gray1(checkboxchild3,checkboxfather3)>checkbox[34]<br>
<input name="checkboxchild3" type="checkbox" value="5" onClick=gray1(checkboxchild3,checkboxfather3)>checkbox[35]<br>
</form>
</body>
</html>
<script language="JavaScript">
var length = document.test.elements.length;
function selectAll(father,cc)
{
ccc = "checkboxchild"+cc;
if(father.checked == true)
{
for(var i = 0;i<length;i++)
{
var ele = document.test.elements[i];
if(ele.name == ccc)
{
ele.checked = true;
ele.disabled = false;
}
}
}
else
{
for(var i = 0;i<length;i++)
{
var ele = document.test.elements[i];
if(ele.name == ccc)
{
ele.checked = false;
ele.disabled = false;
}
}
}
}
function gray1(cn,fn)
{
for(i=0,str=0;i<cn.length;i++)str=str+(cn[i].checked?1:0);gray(str,cn,fn);
}
function gray(c,cn,fn)
{
if(c == cn.length)
{
fn.checked = true;
fn.indeterminate = false;
}
else
{
if(c == 0)
{
fn.checked = false;
fn.indeterminate = false;
}
else
{
fn.checked = true;
fn.indeterminate = true;
}
}
}
</script>