@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;    
}
  • Вопрос задан
  • 95 просмотров
Решения вопроса 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.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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