@viktorulyushev

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

Есть примерно такая структура
<div class="custom_block">
      <div class="price">
             <div class="price-unknown">Свяжитесь с нами насчет цены</div>
      </div>
</div>
<div class="custom_block">
   <div class="price">
          <div class="price-current cs-t-1">
                 <div class="price-number"> 20 000</div> 
                 <div class="price-currency"> руб.</div>
         </div>
   </div>
</div>
<div class="custom_block">
   <div class="price">
          <div class="price-current cs-t-1">
                 <div class="price-number"> 20 000</div> 
                 <div class="price-currency"> руб.</div>
         </div>
   </div>
</div>


Нужно прогнять эти блоки по циклу и проверять есть ли у каждого из этих блоков класс price-unknown,если есть то скрывать блок block_payment_custom у текущего custom_block ,не понимаю как нужно построить скрипт,прохожу each по custom_block,пытаюсь проверять наличие класса с помощью is но не выходит
  • Вопрос задан
  • 2312 просмотров
Пригласить эксперта
Ответы на вопрос 3
copyhold
@copyhold
А CSS?

.price-unknown ~ .block_payment_custom { display: none; }


конечно если они сиблинги.
Ответ написан
Должно получиться что-то типа такого:
$('.custom_block').each(function() {
    if ($(this).find('.price-unknown').length) {
        $(this).find('.block_payment_custom').hide();
    }
});
Ответ написан
Stalker_RED
@Stalker_RED
$('.custom_block .price-unknown').each(function() {
  $(this).closest('.custom_block').find('.block_payment_custom').hide();
});
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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