Jquery .filter () Вопрос - PullRequest
       13

Jquery .filter () Вопрос

3 голосов
/ 08 апреля 2010

С учетом следующего HTML:

<div class="parent">
<span class="child">10</span>
</div>

<div class="parent">
<span class="child">20</span>
</div>

Я хочу отфильтровать и скрыть родительский div на основе его значения span (дочернего значения), поэтому подумал о том, чтобы сделать что-то вроде:

<script>
$('span.child').filter(function(index) {
 return ($(this).text() < '15');
}).$(this).parent().hide();
</script>

Безуспешно ... Я не скрываю родительский div на основе значения Span.

Кто-нибудь может мне помочь?

С благодарностью.

Ответы [ 2 ]

2 голосов
/ 08 апреля 2010

Просто удалите этот последний $(this), вот так:

$('span.child').filter(function(index) {
  return $(this).text() < '15';
}).parent().hide();

.filter() возвращает отфильтрованный набор элементов, он берет то, что вы выбрали, отфильтровывает то, что вы хотели пропустить, и вы просто продолжаете цепочку результатов. Вы можете увидеть это работает здесь .

2 голосов
/ 08 апреля 2010

Попробуйте это:

jQuery('span.child').filter(function(index) {
   return (jQuery(this).text() < '15');  
}).parent().hide();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...