This simple code checks if there is at lease one check box marked,
When I try to get check box array with Firefox I don’t- I just the first one,
Same code working fine in IE,
Do I need to make different ID’s for the check box elements and iterate them?
Thanks for your help.
<html>
<head>
<script type="text/javascript">
function testCheckBox(){
var vehicle = document.getElementById('vehicle');
for (var i=0; i < vehicle.length; i++){
alert(vehicle[i].checked);
if (trucks[i].checked){
alert('at least one was selected');
return true;
}
}
alert('Please select one');
return false;
}
</script>
</head>
<body>
<form>
<input type="checkbox" name="vehicle" value="Bike" /> I have a bike<br />
<input type="checkbox" name="vehicle" value="Car" /> I have a car
<br />
<input type="button" name="test" value="test" onclick="testCheckBox();" />
</body>
</html>
getElementById() never returns an array. It only returns a single element (because ids must be unique – i.e. having more than one element with the same id is invalid HTML.) getElementsByTagName() is what you want here:
(Note: newer browsers support getElementsByClassName, which could also be used.