Сколько флажков установлено - PullRequest
3 голосов
/ 25 июня 2010

У меня есть кнопки проверки на документе.

<input type="checkbox" id="CustmerRequested"/>

Я хочу знать, сколько флажков в документе отмечено.

Я пытался сделать alert(document.all.CustmerRequested.checked.length);, но там указано неопределенное.

Как узнать, сколько флажков отмечено?

Ответы [ 3 ]

5 голосов
/ 25 июня 2010

Если вы начинаете создавать сайт, который регулярно требует такого вида программирования на стороне браузера, я бы посоветовал взглянуть на jQuery.Смотрите здесь для учебников: http://docs.jquery.com/Tutorials

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
    $(function() {
        $("#someButton").click(function() {
            var checkedBoxes = $("#yourForm input:checked");
            alert(checkedBoxes.length + " checked.");
        });
    });
</script>
3 голосов
/ 25 июня 2010

Используйте каркас Javascript, такой как Prototype или JQuery, чтобы найти элементы, которые нужно проверить, например, В прототипе:

var inputs = $$('input');

Этот возвращенный массив может затем зацикливаться, чтобы подсчитать количество входов, которые отмечены флажками, например:

for (var i=0; i<inputs.length; i++){
    if (inputs[i].type == 'checkbox' && inputs[i].checked) {
        numChecked++;
    }
}
0 голосов
/ 25 июня 2010

Да, вы можете сделать это с помощью JavaScript. Нет, вам не нужен jQuery.

Вот один из способов:

function howManyAreChecked()
{
one = document.getElementById("one").checked;
two = document.getElementById("two").checked;
three= document.getElementById("three").checked;

var checkCount = 0;
if ( one == true )
  { checkCount = checkCount + 1 }
if ( two == true )
  { checkCount = checkCount + 1 }
if ( three == true )
  { checkCount = checkCount + 1 }

alert(checkCount);
}

В приведенном выше примере предполагается, что у вас есть 3 флажка в HTML с идентификаторами «один», «два» и «три». Сначала скрипт хранит значение свойства «флажок», которое может быть как ИСТИНА, так и ЛОЖЬ. Затем скрипт просматривает каждую переменную и, если TRUE, увеличивает счетчик.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...