Скрыть класс, если он содержит определенный текст - PullRequest
0 голосов
/ 09 января 2020

HTML:

<div class="spanLabel"><span class="boldLabel">END DATE: </span>end date is empty</div>

JS:

$('.spanLabel').filter(function() {
    return !!($.trim( $(this).text() ) == 'end date is empty');
        }).hide();

Я хочу скрыть весь div spanLabel, если слово дата окончания пусто настоящее.

Прямо сейчас код работает, только если я избавлюсь от <span class="boldLabel">END DATE: </span>

Есть идеи?

1 Ответ

2 голосов
/ 09 января 2020

Предложение end date is empty принадлежит div, а не span, от вашего html. Поэтому вы можете использовать :contains, чтобы проверить, имеет ли текст div нужный текст

$('.spanLabel:contains(" end date is empty")').hide()
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="spanLabel">
  <span class="boldLabel">END DATE: </span> end date is empty
</div>

<div class="spanLabel">
  <span class="boldLabel">END DATE: </span> end date is not empty
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...