<html><body> <input type ="checkbox" name ="checkbox"> <input type ="checkbox" name ="checkbox" ID="Checkbox1"> <input type ="checkbox" name ="checkbox" ID="Checkbox2"> <input type ="checkbox" name ="checkbox" ID="Checkbox3"><input type=button value="check" onclick="dispatch()"> <script>function dispatch() { var num=0; for(var i=0;i<document.all["checkbox"].length;i++) { if(document.all["checkbox"][i].checked==true) { num = num+1 } } alert(num) } </script></body> </html>
function dispatch(type){ var theObject=document.getElementsByName("youcheckboxname"); var num=0; for (var i=0;i<theObject.length;i++){ if (theObject.checked){ num++; } } alert(num); }
/** * This function is to get the number of the checked checkboxes. * JK 2003-12-08 */ function getCheckedCheckboxesNum(nameOfCheckBox) { var theNum=0; var theCheckboxInputs=document.getElementsByName(nameOfCheckBox); for (var i=0;i<theCheckboxInputs.length;i++) { if(theCheckboxInputs[i].checked) theNum++; } return theNum; }
var obj = document.all.elements; var num = 0; for(var i = 0; i < obj.length; i++) { if(obj[i].name == "yourcheckboxname" and obj[i].checked == true) { num++; } }
更正一个错误: var obj = document.all.elements; var num = 0; for(var i = 0; i < obj.length; i++) { if(obj[i].name == "yourcheckboxname" && obj[i].checked == true) { num++; } }
{
var num=0;
for(var i=0;i<document.all["checkbox"].length;i++)
{
if(document.all["checkbox"][i].checked==true) <--这里不对
{
num = num+1
}
} alert(num)
}
应该是if(document.all.checkbox(i).checked){
num++;
}
如不是将所有document.all.checkbox(i).checked这样写法的这个“checkbox”改为你的checkbox的在表单中的名字
<input type ="checkbox" name ="checkbox">
<input type ="checkbox" name ="checkbox" ID="Checkbox1">
<input type ="checkbox" name ="checkbox" ID="Checkbox2">
<input type ="checkbox" name ="checkbox" ID="Checkbox3"><input type=button value="check" onclick="dispatch()">
<script>function dispatch()
{
var num=0;
for(var i=0;i<document.all["checkbox"].length;i++)
{
if(document.all["checkbox"][i].checked==true)
{
num = num+1
}
} alert(num)
}
</script></body>
</html>
var theObject=document.getElementsByName("youcheckboxname");
var num=0;
for (var i=0;i<theObject.length;i++){
if (theObject.checked){
num++;
}
}
alert(num);
}
* This function is to get the number of the checked checkboxes.
* JK 2003-12-08
*/
function getCheckedCheckboxesNum(nameOfCheckBox)
{
var theNum=0;
var theCheckboxInputs=document.getElementsByName(nameOfCheckBox);
for (var i=0;i<theCheckboxInputs.length;i++)
{
if(theCheckboxInputs[i].checked) theNum++;
}
return theNum;
}
谢谢大家我要根据num的值进行判断,这样为什么不可仪:
if(b>1) alert ("只能选择一个域!");
if(b==0) alert("请选择一个域!");
//判断对象是否为空
if (checkIdObj == null)
{ return; }
for (i=0; i<checkIdObj.length; i++)
{ if(checkIdObj[i].checked)
count++;
}
if(count>1) alert ("只能选择一个域!");
if(count==0) alert("请选择一个域!");
;--->> ;
但 theCheckbox = document.getElementsByName("checkbox");返回的总是一个数组,theCheckBox.length为元素个数。
Checkbox对象或者null,所以 .length 是出错。新手都容易遇到这样的问题。使用方法 document.getElementsByName 方法,他返回null 或者数组。
var num = 0;
for(var i = 0; i < obj.length; i++) {
if(obj[i].name == "yourcheckboxname" and obj[i].checked == true) {
num++;
}
}
var obj = document.all.elements;
var num = 0;
for(var i = 0; i < obj.length; i++) {
if(obj[i].name == "yourcheckboxname" && obj[i].checked == true) {
num++;
}
}