Посчитать количество нажатых чекбоксов на jQuery

При работе с формами часто требуется узнать какой option выбран из select-а, сколько нажато чекбоксов и т.п. Важно знать, как работать с такими задачами, чтобы не тратить на них много времени. Рассмотрим пути решения.

Начнем с чекбоксов

Посчитать, сколько чекбоксов отмечены галочками:

var itog = 0;
for(var j=0; j<$('[name=idpersonaj]').length; j++) {
if($('[name=idpersonaj]').eq(j).prop("checked")) { itog++; }
}
alert(itog);

Здесь, в переменную itog мы прибавляем по одному каждый нажатый чекбокс с именем [name=idpersonaj]. В итоге получаем общее число нажатых чекбоксов.

Чтобы суммировать значения (value) всех нажатых чекбоксов, замените itog++; на itog += parseFloat($('[name=calku] [type="checkbox"]').eq(j).val());

Как вы уже поняли узнать, нажат ли чекбокс (радиокнопка) можно так:
if(jQuery('[name=idpersonaj]').prop("checked")) alert("Нажат!");

Включить или выключить чекбокс (радиокнопку):
$("#male1").attr('checked',true);} // включили
$("#male1").attr('checked',false);} // выключили

Теперь разберем моменты с select

Использовать выбранный option можно так:
alert($("[name=personaj] option:selected").val() + $("[name=personaj] option:selected").text()); //здесь мы не только отобразили значение выбранного пункта в select, но и его текст.

Переназначить выбранный пункт option в select другим можно так:
$("[name=personaj]").prop('selectedIndex', 2); //здесь мы сменили выбранный пункт меню 3-м по счету

Вот такие задачки иногда встречаются при работе с формами. Постепенно буду пополнять примеры, если найду что-то интересное.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *


Введите капчу: