2012-03-17 71 views
0

假设我有以下几点。如何限制jQuery搜索到某个区域

<div class="foo"> 
<div> 
some text 
<div class="bar"> 
</div> 
</div> 
</div> 

<div class="foo"> 
<div> 
some text 
<div class="bar"> 
some text 
</div> 
</div> 
</div> 

我想返回div类“bar”中有“某些文本”的类“foo”的所有div。所以第二个会被退回,但不是第二个。我怎样才能做到这一点?

回答

2

试试这个

$("div.bar:contains('some text')").parents(".foo") 
1

这将做到这一点

$('.foo:has(.bar:not(:empty))') 

确保没有在里面的.bar没有字符,甚至空格或换行符。

http://jsfiddle.net/Nk4FB/

+0

什么是'some text'部分? – gdoron 2012-03-17 23:57:32

+0

这将返回具有非空的.bar后代的所有.foo。因此,如果“某些文本”在栏中,它将返回其父项foo。 – Vigrond 2012-03-18 00:17:56

相关问题