2010-01-03 3 views
3

함수에 인수로 전달 된 개체가 있다고 가정합니다. 인수 이름은 "obj"입니다. 다음과 같이 연결할 수 있습니까?Jquery - 개체 및 문자열로 이루어진 선택기를 수행 할 수 있습니까?

$(obj + " .className")...... 

또는

$(obj + "[name='obj_name'])...... 

감사합니다.

$(obj).find('.className')... 
$(obj).find('[name=obj_name]')... 

또는,를 : 당신이 그 자질을 가진 아이들을 찾으려면,

$(obj).filter('.className')... 
$(obj).filter('[name=obj_name]')... 

또는 :

답변

9

아니,하지만 당신은 개체 자체를 필터링 할 수 filter() 방법을 사용할 수 있습니다 find에 대한 대체 구문으로 obj$() 함수의 컨텍스트로 지정하면 다음과 같습니다.

$('.className', obj)... 
$('[name=obj_name]', obj)... 
obj에 일치하는 모든 제한됩니다

$(".className", obj).each(...); 

:

+2

나는 후자의 방법을 선호합니다. – mpen

+0

고마워요, 내 대답을 가지고 – Yossi

0
$(obj.tagName + " .className") 
+0

예를 들어, 개체가 다른 개체의 자식 경우 그 작동하지 않습니다. 예기치 않은 결과가 나타날 수 있습니다. –

+0

질문은 모호합니다. DOM 요소의 인스턴스 인 obj로 해석 한 다음 선택기를 사용하여 지정된 클래스가있는 해당 유형의 다른 요소를 찾습니다. 아니요, 어디에서 obj의 자식을 찾고 싶다는 언급은 없지만 사실 그것이 필수 요소 일 수 있습니다. –

4

당신의 선택의 두 번째 인수는 상황이다. 따라서 obj을 가정하면 div.parent에 대한 참조입니다.

<div class="parent"> 
    <p class="className">I'll be found</p> 
</div> 
<p class="className">I will NOT be found</p> 
관련 문제