@klekovkinandrey

Как скрыть блоки но открыть если в нем есть span?

Есть список
<ul>
<li>
<input type="radio"  value="flat_rate:32" >
<label >Code 6, MB1 500g max 90cm: </label>
</li>
<li>
<input type="radio"  value="flat_rate:32" >
<label >Code 6, MB1 500g max 90cm: </label>
</li>
<li>
<input type="radio"  value="flat_rate:32" >
<label >Code 6, MB1 500g max 90cm: <span ><bdi><span>CHF</span>13.00</bdi></span>
</label>
</li>
</ul>

мне нужно скрыть все li внутри которых нету тега span
т.е грубо говоря дать li display none
но как сделать если в нем есть span как в последнем, дать ему display block

Спасибо
  • Вопрос задан
  • 77 просмотров
Решения вопроса 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
Определить CSS класс .hidden { display: none; }
И выполнить:
document.querySelectorAll('li')
  .forEach(li => li.classList.toggle('hidden', !li.querySelector('span')));
для каждого элемента списка устанавливает или снимает класс hidden, в зависимости от того, найдётся ли span где-нибудь внутри этого элемента.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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