2012-03-17 9 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"안에 "some text"가있는 "foo"클래스의 모든 div를 반환하려고합니다. 두 번째는 반환되지만 두 번째는 반환되지 않습니다. 어떻게해야합니까?

답변

2

는이

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

이 그것을

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

.bar 인 내부에는 문자, 심지어 공백이나 줄 바꿈이 없는지 확인 할 것입니다보십시오.

http://jsfiddle.net/Nk4FB/

+0

'일부 텍스트'부분은 무엇입니까? – gdoron

+0

이것은 비어 있지 않은 자손 .bar를 가진 모든 .foo를 반환합니다. 따라서 'some text'가 막대에 있으면 부모 foo가 반환됩니다. – Vigrond

관련 문제