<HTML>
<HEAD>
<TITLE> New Document </TITLE>
</HEAD>
<BODY>
<INPUT TYPE="checkbox" NAME="cb">a<BR>
<INPUT TYPE="checkbox" NAME="cb">b<BR>
<INPUT TYPE="checkbox" NAME="cb">c<BR>
<INPUT TYPE="checkbox" NAME="cb">d<BR>
<INPUT TYPE="button" value="Select All" onclick="var i;for (i=0;i<cb.length;i++) cb[i].checked=true">
</BODY>
</HTML>
<HEAD>
<TITLE> New Document </TITLE>
</HEAD>
<BODY>
<INPUT TYPE="checkbox" NAME="cb">a<BR>
<INPUT TYPE="checkbox" NAME="cb">b<BR>
<INPUT TYPE="checkbox" NAME="cb">c<BR>
<INPUT TYPE="checkbox" NAME="cb">d<BR>
<INPUT TYPE="button" value="Select All" onclick="var i;for (i=0;i<cb.length;i++) cb[i].checked=true">
</BODY>
</HTML>
<title>test</title>
<body>
<form name="myForm">
<table>
<tr><input type="checkbox" name="abc" checked> red</tr>
<tr><input type="checkbox" name="bbc" checked> yellow</tr>
<tr><input type="checkbox" name="cbc" checked> green</tr>
<br>
<tr><input type="button" name="dbc" value="select" onclick="doSelect()"></tr>
</table>
</form>
</body><script language="javascript">
<!--
function doSelect() {
for( var i = 0; i < document.myForm.elements.length; i++ ) {
if(document.myForm.elements[i].type == "checkbox") {
if(document.myForm.elements[i].name.substr(0,2) == "cb") {
document.myForm.elements[i].checked = true;
} else {
document.myForm.elements[i].checked = false;
}
}
}
}//-->
</script></html>
但由于涉及到页面内所有的元素,checkbox不止在一个表单内,而且表单外也有,我搜索的是
document.all。可惜很慢,因为除了checkbox,页面内还有3000多个其他元素。不知有没有
语句能取得页面内所有checkbox的集合?
可以简化一点,将document.myForm.elements换成document.myForm.tags("input")