Задать вопрос
@Valmih

Почему не срабатывает removeClass?

Добрый вечер коллеги!
Помогите разобраться. Есть три одинаковых блока "parent". У каждого из них есть input=radio, и дочерний блок "children".
По клику именно на этот input=radio, именно на этот "children" вешается класс. Но при клике на другой input=radio класс не удаляется. Пожалуйста, подскажите что добавить, или что неправильно? Вот код

$('.parent').change(function() {
if($("input:radio[class='radio']").is(':checked')) {
$(this).find("children").toggleClass("checked");
}
});

Заранее спасибо за помощь!
  • Вопрос задан
  • 164 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
в коде нет прямой родительской связи, берется первый элемент например или типа того

if($("input:radio[class='radio']").is(':checked'))
Ответ написан
Bowen
@Bowen
Японский бог
<div class="block">
    <input type="radio" name="a" value="1" class="block__radio">
    <div class="block__child">
    1
    </div>
</div>
<div class="block">
    <input type="radio" name="a" value="2" class="block__radio">
    <div class="block__child">
    2
    </div>
</div>

.block__radio:checked ~ .block__child {
    background: red;
}
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы