понедельник, 31 октября 2011 г.

jQuery переключение checkbox как radio

А если подробнее, то иногда необходимо реализовать такое поведение группы чекбоксов, что бы они вели себе как радио батоны. Т.е если мы отмечаем один чекбокс то значение checked снимается с других, вобщем что бы нельзя было отметить больше одного checkbox в группе. Нашел хорошее решение на просторах интернета





<input type='checkbox' name='group1' value='1' class='unique'>
<input type='checkbox' name='group2' value='2' class='unique'>
<input type='checkbox' name='group3' value='3' class='unique'>
Используем такой код, если хотим позволить  оставить неотмеченным флажок.

var $unique = $('input.unique');
$unique.click(function() {
    $unique.filter(':checked').not(this).removeAttr('checked');
});

А если же хотим что бы флажок был отмечен обязательно то используем следующий код.

var $unique = $('input.unique');
$unique.click(function() {
    $unique.removeAttr('checked');
    $(this).attr('checked', true);
});


Пример: http://jsbin.com/uwewi

Комментариев нет:

Отправить комментарий