OnClick добавить класс в метку

0

Я работаю над скриптом викторины. Я спрятал радиокнопки и хочу сделать класс ярлыка (псевдонимы псевдо-кликабельным).

У меня есть:

<li class="pos-3">
   <input type="radio" value="4" id='radio1_<?php echo $result['id'];?>' name='<?php echo $result['id'];?>'/>
   <label class="" for="radio1_<?php echo $result['id'];?>"><?php echo $result['answer4'];?></label>
</li>

Я думал, что могу добиться этого с помощью jQuery:

$(document).ready(function() {
 if($("input.check").is(":checked")){
$(this).label.addClass("checked");
  }
});

Но неудачно.

Любые предложения, щелчок по радио, регистрируется. Но класс не добавляется.

Для каждого вопроса есть 4 (ли) выбор.

Теги:

2 ответа

2
Лучший ответ

Вам нужно иметь обработчик изменений, зарегистрированный для радиоэлементов, тогда вы можете использовать.toggleClass(), чтобы переключить проверенный класс для метки

jQuery(function () {
    $('input[type="radio"]').change(function () {
        $('input[name="' + this.name + '"]').not(this).next().removeClass('checked');
        $(this).next().toggleClass('checked', this.checked)
    })
})

Демо: скрипка

0

Вы можете просто добавить класс, checked по щелчку переключателя, и удалить этот класс из других радиокнопок:

$('input[type="radio"]').change(function () { 
    $('input[type="radio"]').next().removeClass('checked');
    $(this).next().addClass('checked');    
});

демонстрация

Ещё вопросы

Сообщество Overcoder
Наверх
Меню