Я работаю над скриптом викторины. Я спрятал радиокнопки и хочу сделать класс ярлыка (псевдонимы псевдо-кликабельным).
У меня есть:
<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 (ли) выбор.
Вам нужно иметь обработчик изменений, зарегистрированный для радиоэлементов, тогда вы можете использовать.toggleClass(), чтобы переключить проверенный класс для метки
jQuery(function () {
$('input[type="radio"]').change(function () {
$('input[name="' + this.name + '"]').not(this).next().removeClass('checked');
$(this).next().toggleClass('checked', this.checked)
})
})
Демо: скрипка
Вы можете просто добавить класс, checked
по щелчку переключателя, и удалить этот класс из других радиокнопок:
$('input[type="radio"]').change(function () {
$('input[type="radio"]').next().removeClass('checked');
$(this).next().addClass('checked');
});