用数字来命名控件不是个好办法,但试试<script langugage="javascript">
function document.onclick()
{
var ele = event.srcElement;
if (ele.tagName == "INPUT" && ele.type == "checkbox")
{
switch (ele.name)
{
case "all":
setCheck(ele,true);
break;
case "1": case "2": case "3": case "4":
setCheck(ele);
break;
default:
break; }
}
}function setCheck(obj, bAll)
{
var inputs = document.all.tags("INPUT");
for (var i=0; i < inputs.length; i++)
{
if (inputs[i].type == "checkbox" && obj != inputs[i])
{
if (bAll)
inputs[i].checked = obj.checked;
else if (inputs[i].name.length > 1 && inputs[i].name.indexOf(obj.name) ==0)
inputs[i].checked = obj.checked; }
}
}
</script>
function document.onclick()
{
var ele = event.srcElement;
if (ele.tagName == "INPUT" && ele.type == "checkbox")
{
switch (ele.name)
{
case "all":
setCheck(ele,true);
break;
case "1": case "2": case "3": case "4":
setCheck(ele);
break;
default:
break; }
}
}function setCheck(obj, bAll)
{
var inputs = document.all.tags("INPUT");
for (var i=0; i < inputs.length; i++)
{
if (inputs[i].type == "checkbox" && obj != inputs[i])
{
if (bAll)
inputs[i].checked = obj.checked;
else if (inputs[i].name.length > 1 && inputs[i].name.indexOf(obj.name) ==0)
inputs[i].checked = obj.checked; }
}
}
</script>
function qi(all){
for(i=0;i<list1.checkbox1.length;i++)
list1.checkbox1[i].checked=all;}
</script><FORM name="list1" METHOD=POST ACTION="">
<INPUT TYPE="checkbox" NAME="1" value="Check All" onClick="qi(this.checked);">1
<BR> <INPUT TYPE="checkbox" NAME="checkbox1">11
<BR> <INPUT TYPE="checkbox" NAME="checkbox1">12
<BR> <INPUT TYPE="checkbox" NAME="checkbox1">13
<BR> <INPUT TYPE="checkbox" NAME="checkbox1">14
<BR><BR>
<INPUT TYPE="checkbox" NAME="2">2
<BR> <INPUT TYPE="checkbox" NAME="21">21
<BR> <INPUT TYPE="checkbox" NAME="22">22
<BR> <INPUT TYPE="checkbox" NAME="23">23
<BR> <INPUT TYPE="checkbox" NAME="24">24
<BR><BR>
<INPUT TYPE="checkbox" NAME="3">3
<BR> <INPUT TYPE="checkbox" NAME="31">31
<BR> <INPUT TYPE="checkbox" NAME="32">32
<BR> <INPUT TYPE="checkbox" NAME="33">33
<BR> <INPUT TYPE="checkbox" NAME="34">34
<BR><BR>
<INPUT TYPE="checkbox" NAME="4">4
<BR> <INPUT TYPE="checkbox" NAME="41">41
<BR> <INPUT TYPE="checkbox" NAME="42">42
<BR> <INPUT TYPE="checkbox" NAME="43">43
<BR> <INPUT TYPE="checkbox" NAME="44">44
<BR><BR>
<INPUT TYPE="checkbox" NAME="all">all
</FORM>
<INPUT TYPE="checkbox" NAME="M1">1
<BR> <INPUT TYPE="checkbox" NAME="M11">11
<BR> <INPUT TYPE="checkbox" NAME="M12">12
<BR> <INPUT TYPE="checkbox" NAME="M13">13
<BR> <INPUT TYPE="checkbox" NAME="M14">14
<BR><BR>
<INPUT TYPE="checkbox" NAME="M2">2
<BR> <INPUT TYPE="checkbox" NAME="M21">21
<BR> <INPUT TYPE="checkbox" NAME="M22">22
<BR> <INPUT TYPE="checkbox" NAME="M23">23
<BR> <INPUT TYPE="checkbox" NAME="M24">24
<BR><BR>
<INPUT TYPE="checkbox" NAME="M3">3
<BR> <INPUT TYPE="checkbox" NAME="M31">31
<BR> <INPUT TYPE="checkbox" NAME="M32">32
<BR> <INPUT TYPE="checkbox" NAME="M33">33
<BR> <INPUT TYPE="checkbox" NAME="M34">34
<BR><BR>
<INPUT TYPE="checkbox" NAME="M4">4
<BR> <INPUT TYPE="checkbox" NAME="M41">41
<BR> <INPUT TYPE="checkbox" NAME="M42">42
<BR> <INPUT TYPE="checkbox" NAME="M43">43
<BR> <INPUT TYPE="checkbox" NAME="M44">44
<BR><BR>
<INPUT TYPE="checkbox" NAME="all">all
</FORM>这样可以吗?请你帮改一下JavaScript.
function document.onclick()
{
var ele = event.srcElement;
if (ele.tagName == "INPUT" && ele.type == "checkbox")
{
switch (ele.name)
{
case "all":
setCheck(ele,true);
break;
case "1": case "2": case "3": case "4": case "5": case "6": case "7": case "8": case "9": case "10": case "11": case "12": case "13": case "14":
setCheck(ele);
break;
default:
break; }
}
}function setCheck(obj, bAll)
{
var inputs = document.all.tags("INPUT");
for (var i=0; i < inputs.length; i++)
{
if (inputs[i].type == "checkbox" && obj != inputs[i])
{
if (bAll)
inputs[i].checked = obj.checked;
else if (inputs[i].name.length > 1 && inputs[i].name.indexOf(obj.name) ==0)
inputs[i].checked = obj.checked; }
}
}
</script>
<FORM METHOD=POST ACTION="">
<INPUT TYPE="checkbox" NAME="1">1
<BR> <INPUT TYPE="checkbox" NAME="11">11
<BR> <INPUT TYPE="checkbox" NAME="12">12
<BR> <INPUT TYPE="checkbox" NAME="13">13
<BR> <INPUT TYPE="checkbox" NAME="14">14
<BR><BR>
<INPUT TYPE="checkbox" NAME="2">2
<BR> <INPUT TYPE="checkbox" NAME="21">21
<BR> <INPUT TYPE="checkbox" NAME="22">22
<BR> <INPUT TYPE="checkbox" NAME="23">23
<BR> <INPUT TYPE="checkbox" NAME="24">24
<BR><BR>
<INPUT TYPE="checkbox" NAME="3">3
<BR> <INPUT TYPE="checkbox" NAME="31">31
<BR> <INPUT TYPE="checkbox" NAME="32">32
<BR> <INPUT TYPE="checkbox" NAME="33">33
<BR> <INPUT TYPE="checkbox" NAME="34">34
<BR><BR>
<INPUT TYPE="checkbox" NAME="4">4
<BR> <INPUT TYPE="checkbox" NAME="41">41
<BR> <INPUT TYPE="checkbox" NAME="42">42
<BR> <INPUT TYPE="checkbox" NAME="43">43
<BR> <INPUT TYPE="checkbox" NAME="44">44
<BR><BR>
<INPUT TYPE="checkbox" NAME="5">5
<BR> <INPUT TYPE="checkbox" NAME="51">51
<BR> <INPUT TYPE="checkbox" NAME="52">52
<BR> <INPUT TYPE="checkbox" NAME="53">53
<BR> <INPUT TYPE="checkbox" NAME="54">54
<BR><BR>
<INPUT TYPE="checkbox" NAME="6">6
<BR> <INPUT TYPE="checkbox" NAME="61">61
<BR> <INPUT TYPE="checkbox" NAME="62">62
<BR> <INPUT TYPE="checkbox" NAME="63">63
<BR> <INPUT TYPE="checkbox" NAME="64">64
<BR><BR>
<INPUT TYPE="checkbox" NAME="7">7
<BR> <INPUT TYPE="checkbox" NAME="71">71
<BR> <INPUT TYPE="checkbox" NAME="72">72
<BR> <INPUT TYPE="checkbox" NAME="73">73
<BR> <INPUT TYPE="checkbox" NAME="74">74
<BR><BR>
<INPUT TYPE="checkbox" NAME="8">8
<BR> <INPUT TYPE="checkbox" NAME="81">81
<BR> <INPUT TYPE="checkbox" NAME="82">82
<BR> <INPUT TYPE="checkbox" NAME="83">83
<BR> <INPUT TYPE="checkbox" NAME="84">84
<BR><BR>
<INPUT TYPE="checkbox" NAME="9">9
<BR> <INPUT TYPE="checkbox" NAME="91">91
<BR> <INPUT TYPE="checkbox" NAME="92">92
<BR> <INPUT TYPE="checkbox" NAME="93">93
<BR> <INPUT TYPE="checkbox" NAME="94">94
<BR><BR>
<INPUT TYPE="checkbox" NAME="10">10
<BR> <INPUT TYPE="checkbox" NAME="101">101
<BR> <INPUT TYPE="checkbox" NAME="102">102
<BR> <INPUT TYPE="checkbox" NAME="103">103
<BR> <INPUT TYPE="checkbox" NAME="104">104
<BR><BR>
<INPUT TYPE="checkbox" NAME="11">11
<BR> <INPUT TYPE="checkbox" NAME="111">111
<BR> <INPUT TYPE="checkbox" NAME="112">112
<BR> <INPUT TYPE="checkbox" NAME="113">113
<BR> <INPUT TYPE="checkbox" NAME="114">114
<BR><BR>
<INPUT TYPE="checkbox" NAME="12">12
<BR> <INPUT TYPE="checkbox" NAME="121">121
<BR> <INPUT TYPE="checkbox" NAME="122">122
<BR> <INPUT TYPE="checkbox" NAME="123">123
<BR> <INPUT TYPE="checkbox" NAME="124">124
<BR><BR>
<INPUT TYPE="checkbox" NAME="13">13
<BR> <INPUT TYPE="checkbox" NAME="131">131
<BR> <INPUT TYPE="checkbox" NAME="132">132
<BR> <INPUT TYPE="checkbox" NAME="133">133
<BR> <INPUT TYPE="checkbox" NAME="134">134
<BR><BR>
<INPUT TYPE="checkbox" NAME="14">14
<BR> <INPUT TYPE="checkbox" NAME="141">141
<BR> <INPUT TYPE="checkbox" NAME="142">142
<BR> <INPUT TYPE="checkbox" NAME="143">143
<BR> <INPUT TYPE="checkbox" NAME="144">144<BR><BR>
<INPUT TYPE="submit" value=" ok ">
<INPUT TYPE="reset" value=" re ">
<INPUT TYPE="checkbox" NAME="all">all
</FORM>
会出错。就是选择第14时,前面的也会自动被选中。可否请你帮我更改.不够可以加分
function document.onclick()
{
var ele = event.srcElement;
if (ele.tagName == "INPUT" && ele.type == "checkbox")
{
switch (ele.name)
{
case "all":
setCheck(ele,true);
break;
case "1": case "2": case "3": case "4":
case "5": case "6": case "7": case "8":
case "9": case "10": case "11": case "12":
case "13": case "14":
setCheck(ele);
break;
default:
break; }
}
}function setCheck(obj, bAll)
{
var inputs = document.all.tags("INPUT");
for (var i=0; i < inputs.length; i++)
{
if (inputs[i].type == "checkbox" && obj != inputs[i])
{
if (bAll)
inputs[i].checked = obj.checked;
else if (inputs[i].name.length == (obj.name.length + 1) && inputs[i].name.indexOf(obj.name) ==0)
inputs[i].checked = obj.checked; }
}
}
</script>
ac
ac1
ac2
ac3
....
bd
bd1
bd2
bd3
....
cx
cx1
cx2
cx3意思就是,父复选框的名字总是与其它父复选框的名字不同,但其子复选框的名字是以父复选框的名字加数字来命名的然后试用这脚本:
<script langugage="javascript">
function document.onclick()
{
var ele = event.srcElement;
if (ele.tagName == "INPUT" && ele.type == "checkbox")
{
if (ele.name == "all")
setCheck(ele,true);
else if (!/\d+/.test(ele.name))
setCheck(ele);
}
}function setCheck(obj, bAll)
{
var inputs = document.all.tags("INPUT");
for (var i=0; i < inputs.length; i++)
{
if (inputs[i].type == "checkbox" && obj != inputs[i])
{
if (bAll)
inputs[i].checked = obj.checked;
else if (inputs[i].name.indexOf(obj.name) ==0)
inputs[i].checked = obj.checked; }
}
}
</script>
function document.onclick()
{
var ele = event.srcElement;
if (ele.tagName == "INPUT" && ele.type == "checkbox")
{
if (ele.name == "all")
setCheck(ele,true);
else if (!/\d+/.test(ele.name))
setCheck(ele);
}
}function setCheck(obj, bAll)
{
var inputs = document.all.tags("INPUT");
for (var i=0; i < inputs.length; i++)
{
if (inputs[i].type == "checkbox" && obj != inputs[i])
{
if (bAll)
inputs[i].checked = obj.checked;
else if (inputs[i].name.indexOf(obj.name) ==0)
inputs[i].checked = obj.checked; }
}
}
</script>
<FORM METHOD=POST ACTION="">
<INPUT TYPE="checkbox" NAME="a1a">1
<BR> <INPUT TYPE="checkbox" NAME="a1a1">11
<BR> <INPUT TYPE="checkbox" NAME="a1a2">12
<BR> <INPUT TYPE="checkbox" NAME="a1a3">13
<BR> <INPUT TYPE="checkbox" NAME="a1a4">14
<BR><BR>
<INPUT TYPE="checkbox" NAME="a2a">2
<BR> <INPUT TYPE="checkbox" NAME="a2a1">21
<BR> <INPUT TYPE="checkbox" NAME="a2a2">22
<BR> <INPUT TYPE="checkbox" NAME="a2a3">23
<BR> <INPUT TYPE="checkbox" NAME="a2a4">24
<BR><BR>
<INPUT TYPE="checkbox" NAME="a3a">3
<BR> <INPUT TYPE="checkbox" NAME="a3a1">31
<BR> <INPUT TYPE="checkbox" NAME="a3a2">32
<BR> <INPUT TYPE="checkbox" NAME="a3a3">33
<BR> <INPUT TYPE="checkbox" NAME="a3a4">34
<BR><BR>
<INPUT TYPE="checkbox" NAME="a4a">4
<BR> <INPUT TYPE="checkbox" NAME="a4a1">41
<BR> <INPUT TYPE="checkbox" NAME="a4a2">42
<BR> <INPUT TYPE="checkbox" NAME="a4a3">43
<BR> <INPUT TYPE="checkbox" NAME="a4a4">44
<BR><BR>
<INPUT TYPE="checkbox" NAME="a5a">5
<BR> <INPUT TYPE="checkbox" NAME="a5a1">51
<BR> <INPUT TYPE="checkbox" NAME="a5a2">52
<BR> <INPUT TYPE="checkbox" NAME="a5a3">53
<BR> <INPUT TYPE="checkbox" NAME="a5a4">54
<BR><BR>
<INPUT TYPE="checkbox" NAME="a6a">6
<BR> <INPUT TYPE="checkbox" NAME="a6a1">61
<BR> <INPUT TYPE="checkbox" NAME="a6a2">62
<BR> <INPUT TYPE="checkbox" NAME="a6a3">63
<BR> <INPUT TYPE="checkbox" NAME="a6a4">64
<BR><BR>
<INPUT TYPE="checkbox" NAME="a7a">7
<BR> <INPUT TYPE="checkbox" NAME="a7a1">71
<BR> <INPUT TYPE="checkbox" NAME="a7a2">72
<BR> <INPUT TYPE="checkbox" NAME="a7a3">73
<BR> <INPUT TYPE="checkbox" NAME="a7a4">74
<BR><BR>
<INPUT TYPE="checkbox" NAME="a8a">8
<BR> <INPUT TYPE="checkbox" NAME="a8a1">81
<BR> <INPUT TYPE="checkbox" NAME="a8a2">82
<BR> <INPUT TYPE="checkbox" NAME="a8a3">83
<BR> <INPUT TYPE="checkbox" NAME="a8a4">84
<BR><BR>
<INPUT TYPE="checkbox" NAME="a9a">9
<BR> <INPUT TYPE="checkbox" NAME="a9a1">91
<BR> <INPUT TYPE="checkbox" NAME="a9a2">92
<BR> <INPUT TYPE="checkbox" NAME="a9a3">93
<BR> <INPUT TYPE="checkbox" NAME="a9a4">94
<BR><BR>
<INPUT TYPE="checkbox" NAME="a10a">10
<BR> <INPUT TYPE="checkbox" NAME="a10a1">101
<BR> <INPUT TYPE="checkbox" NAME="a10a2">102
<BR> <INPUT TYPE="checkbox" NAME="a10a3">103
<BR> <INPUT TYPE="checkbox" NAME="a10a4">104
<BR><BR>
<INPUT TYPE="checkbox" NAME="a11a">11
<BR> <INPUT TYPE="checkbox" NAME="a11a1">111
<BR> <INPUT TYPE="checkbox" NAME="a11a2">112
<BR> <INPUT TYPE="checkbox" NAME="a11a3">113
<BR> <INPUT TYPE="checkbox" NAME="a11a4">114
<BR><BR>
<INPUT TYPE="checkbox" NAME="a12a">12
<BR> <INPUT TYPE="checkbox" NAME="a12a1">121
<BR> <INPUT TYPE="checkbox" NAME="a12a2">122
<BR> <INPUT TYPE="checkbox" NAME="a12a3">123
<BR> <INPUT TYPE="checkbox" NAME="a12a4">124
<BR><BR>
<INPUT TYPE="checkbox" NAME="a13a">13
<BR> <INPUT TYPE="checkbox" NAME="a13a1">131
<BR> <INPUT TYPE="checkbox" NAME="a13a2">132
<BR> <INPUT TYPE="checkbox" NAME="a13a3">133
<BR> <INPUT TYPE="checkbox" NAME="a13a4">134
<BR><BR>
<INPUT TYPE="checkbox" NAME="a14a">14
<BR> <INPUT TYPE="checkbox" NAME="a14a1">141
<BR> <INPUT TYPE="checkbox" NAME="a14a2">142
<BR> <INPUT TYPE="checkbox" NAME="a14a3">143
<BR> <INPUT TYPE="checkbox" NAME="a14a4">144<BR><BR>
<INPUT TYPE="submit" value=" ok ">
<INPUT TYPE="reset" value=" re ">
<INPUT TYPE="checkbox" NAME="all">all
</FORM>
function document.onclick()
{
var ele = event.srcElement;
if (ele.tagName == "INPUT" && ele.type == "checkbox")
{
if (ele.name == "all")
setCheck(ele,true);
else if (!/\d+$/.test(ele.name)) //name does not end with numbers
setCheck(ele);
}
}function setCheck(obj, bAll)
{
var inputs = obj.form.elements; //document.all.tags("INPUT");
for (var i=0; i < inputs.length; i++)
{
if (inputs[i].type == "checkbox" && obj != inputs[i])
{
if (bAll)
inputs[i].checked = obj.checked;
else if (inputs[i].name.indexOf(obj.name) ==0)
inputs[i].checked = obj.checked; }
}
}
</script>