@Grizar

Как задать стиль родительскому div в зависимости от вложенног input?

У меня есть такие пункты
Красный(5)
Синий(0)
Черный(4)
здесь - https://jsfiddle.net/gkan10qr/20/
https://jsfiddle.net/gkan10qr/21/
Зависимость у меня только одна
это строки 4, 14 и 23
в<input разные name=,
т.е. мы имеем несколько name=
name="qwer"
name="asdf"
name="zxcv"

Как мне в зависимости от этих значений присвоить свой background: ####;
нужно каждому <div class="icheckbox_flat-blue" >
добавить еще один класс
чтобы я смог задать стили для каждого дива
т.е из <div class="icheckbox_flat-blue" > надо получить
<div class="icheckbox_flat-blue new-style"> т.е.
<div class="icheckbox_flat-blue qwer"> - т.е. для каждого свой класс чтоб в итоге можно было применить стили типа
.icheckbox_flat-blue .asdf {
      background: #F44336;   
}
.icheckbox_flat-blue .qwer {
     background: #333;  
}
.icheckbox_flat-blue.zxcv {
       background: #4CAF50;    
}
  • Вопрос задан
  • 93 просмотра
Решения вопроса 1
@ddubrava
Frontend developer, Angular
https://jsfiddle.net/fc10kdtw/

const inputs = document.getElementsByTagName('input');

[...inputs].forEach((input) => {
  if (input.type !== 'hidden') {
    input.parentNode.classList.add(input.name);
  }
})


Получим HTMLCollection из input'ов. Итерируем массив из полученных элементов, у каждого не скрытого получаем parentNode, это необходимый div. Добавляем ему необходимые классы, полученные из input.name.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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