Как удалить класс из одного набора братьев и сестер, не затрагивая другие элементы с тем же классом

0

У меня есть следующее:

<div class="attributes_set_1>
   <label class="attributes"><input type="radio" value="1" /></label>
   <label class="attributes"><input type="radio" value="2" /></label>
   <label class="attributes"><input type="radio" value="3" /></label>
</div>

<div class="attributes_set_2>
   <label class="attributes"><input type="radio" value="1" /></label>
   <label class="attributes"><input type="radio" value="2" /></label>
   <label class="attributes"><input type="radio" value="3" /></label>
</div>

Я пытаюсь добавить активный класс к любому из первых наборов переключателей при нажатии, но также удалять класс, если вы выбираете другой из одного и того же набора. Проблема в том, что мне нужно иметь возможность выбирать из следующего набора переключателей, не удаляя активный класс из любого другого набора.

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

Как я могу выбрать только братьев и сестер определенного родительского класса, чтобы удалить активный класс?

$('.attributes').children().removeClass('active');

Как добавить активный класс к любому другому радио, на который я нажал, является ли он частью одного и того же брата или нет, как только я сделаю работу removeClass()?

$(this).addClass('active');

Спасибо кому-нибудь за помощь.

Теги:
tree-traversal

3 ответа

0

Попробуй это:

 $(this).parent().siblings().find('.active').removeClass("active");
0

Предполагая, что this переключатель, к которому вы добавили active класс, вы можете найти братьев и сестер элементов родительских label а затем удалить класс из его входных элементов

$(this).parent().siblings().find('input').removeClass('active');
0

Попробуй это:

$('.attributes input').click(function() {
    $(this).addClass('active').parent().siblings('.attributes').find('input').removeClass('active');
})

Ещё вопросы

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