Как мне добавлять и удалять класс при нажатие на группу radio?

Пробовал с toggleClass, но почему-то именно toggleClass не работает в таких случаях и пришлось делать addClass и removeClass. Только у меня проблема, как мне сделать так, что при активном radio класс добавлялся active и уходил если его переключили?
Он как будто у меня не удаляет этот класс который добавился
https://jsfiddle.net/rusline/stxx2t3b/4/
  • Вопрос задан
  • 85 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
if($(this).children().is(':checked')){
  $(this).addClass('active');
} else {
  $(this).removeClass('active');
}

Подобный код имело бы смысл использовать, будь у вас чекбоксы. У радиокнопок же повторный клик не приводит к смене состояния - они всегда после клика будут checked. Так что класс добавлять надо без всяких проверок. И удалять тоже без проверок - но у соседей, а не кликнутого элемента. Т.е., правильно будет так:

$(this).addClass('active').siblings().removeClass('active');
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы