Если у вас есть ссылка на элемент формы , можно легко просмотреть элементы:
function countChecked(form) {
var index, element;
for (index = 0; index < form.elements.length; ++index) {
element = form.elements[index];
// You may want to check `element.name` here as well
if (element.type.toUpperCase() == "CHECKBOX" && element.checked) {
++checked;
}
}
return checked;
}
Существует множество способов получить ссылку на элемент формы. Например, дайте форме id
и используйте document.getElementById
.
Так что, если id
вашей формы, например, "foo", то:
var checkedCount = countChecked(document.getElementById('foo'));
Не по теме : многие из этих вещей можно упростить лот , используя такие библиотеки, как jQuery , Prototype , YUI , Закрытие или любой из нескольких других для сглаживания различий в браузере, предоставления вам богатых способов перехода к элементам с помощью селекторов CSS и т. Д.
Например, вышеприведенное можно написать с помощью jQuery, например так:
var checkedCount = $("#foo :checkbox:checked").length;
... который говорит, 'найти все отмеченные флажки, которые являются потомками элемента с id
"foo"' , а затем использует длину полученного объекта jQuery (объекты jQuery являются массивом -как).