Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.12.2022, 21:53
Новичок на форуме
Отправить личное сообщение для maintpl Посмотреть профиль Найти все сообщения от maintpl
 
Регистрация: 14.11.2021
Сообщений: 6

Как добавить класс в цикле ?
Есть цикл списка ul li
Нужно всем li, в которых внутри нету тега span дать класс .hidden

<ul id="shipping_method" class="woocommerce-shipping-methods">
									<li>
						<input type="radio" name="shipping_method[0]" data-index="0" id="shipping_method_0_flat_rate76" value="flat_rate:76" class="shipping_method" checked="checked"><label for="shipping_method_0_flat_rate76">Code 1 0,5 kg - 2 kg</label>					</li>
									<li>
						<input type="radio" name="shipping_method[0]" data-index="0" id="shipping_method_0_flat_rate77" value="flat_rate:77" class="shipping_method"><label for="shipping_method_0_flat_rate77">Code 2 2 kg - 5 kg</label>					</li>
									<li>
						<input type="radio" name="shipping_method[0]" data-index="0" id="shipping_method_0_flat_rate78" value="flat_rate:78" class="shipping_method"><label for="shipping_method_0_flat_rate78">Code 3 10kg</label>					</li>
									<li>
						<input type="radio" name="shipping_method[0]" data-index="0" id="shipping_method_0_flat_rate79" value="flat_rate:79" class="shipping_method"><label for="shipping_method_0_flat_rate79">Code 4 15 kg</label>					</li>
									<li>
						<input type="radio" name="shipping_method[0]" data-index="0" id="shipping_method_0_flat_rate80" value="flat_rate:80" class="shipping_method"><label for="shipping_method_0_flat_rate80">Code 5 20 kg</label>					</li>
									<li>
						<input type="radio" name="shipping_method[0]" data-index="0" id="shipping_method_0_flat_rate81" value="flat_rate:81" class="shipping_method"><label for="shipping_method_0_flat_rate81">Code 6 25 kg: <span class="woocommerce-Price-amount amount"><bdi><span class="woocommerce-Price-currencySymbol">CHF</span>367.00</bdi></span></label>					</li>
									<li>
						<input type="radio" name="shipping_method[0]" data-index="0" id="shipping_method_0_flat_rate82" value="flat_rate:82" class="shipping_method"><label for="shipping_method_0_flat_rate82">Code 7 30 kg</label>					</li>
							</ul>


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


есть такое вот решение, но запихнув в js файл, оно не срабатывает
document.querySelectorAll('li')
  .forEach(li => li.classList.toggle('hidden', !li.querySelector('span')));
Ответить с цитированием
  #2 (permalink)  
Старый 14.12.2022, 22:52
Новичок на форуме
Отправить личное сообщение для maintpl Посмотреть профиль Найти все сообщения от maintpl
 
Регистрация: 14.11.2021
Сообщений: 6

вопрос решен.
Ответить с цитированием
  #3 (permalink)  
Старый 14.12.2022, 23:09
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

maintpl,
только ни кому не говори про это https://learn.javascript.ru/onload-ondomcontentloaded
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как добавить класс к блоку по клику на кнопку, которая загружена в iframe? Oleg0 Общие вопросы Javascript 5 08.08.2021 13:15
Добавить класс к таблице но не ко всем td Alexprom Элементы интерфейса 12 05.02.2021 15:35
Как при появление класса в блоке1, добавить класс в блок2? raindew jQuery 3 11.10.2013 21:05
Как добавить класс, если он переменная? j.r.r jQuery 2 30.08.2013 23:52
Передал аяксом класс в <div>, но как отловить событите клик на этот класс ? saturn Элементы интерфейса 11 31.05.2012 10:30