2011-01-31 12 views
0

"해당"변수에 요소 목록이 있습니다. 특정 애트리뷰트가있는 요소를 어떻게 찾을 수 있습니까?jQuery - 요소 목록에서 특정 속성이있는 요소 선택

(function($) { 
    $.fn.blah = function(){ 
    var that = this; 
    return this.each(function(){ 
     $(this).bind('change', function(){ 
      $("[name]", that).dostuff(); // <- doesn't seem to work 

      return true; 
     }).change(); 

    }); 
}; 

})(jQuery); 

답변

3

.filter()help 방법은을 수행해야합니다

$(that).filter('[name]').dostuff(); 
+0

을 사용할 수 있습니다, 감사합니다. jquery 이상한입니다 : x – Alex

+1

@Alexandra : 왜 이상한가요? 중요한 방법 중 일부를 배워야한다고 생각합니다. 'that '에있는 요소의 모든 * 하위 항목을 검색 할 that.find ("[name]")'과 동일하기 때문에 $ ("[name]", that)'는 작동하지 않습니다. 셀렉터와 일치합니다. –

+1

Btw. 'that'은 이미 jQuery 객체이므로 'that.filter'가 충분해야합니다. –

1

윌이 도움을?

var found=$(that).find("thingyousearching"); 
+0

'find'는 현재 선택된 요소의 모든 하위 항목을 검색합니다. 요소 자체는 검색하지 않습니다. –

+0

@Felix Kling - 좋습니다. 그녀의 문제를 해결합니까? 그래서 당신이 제안하는 것? – FeRtoll

+0

@FeRtoll : 아니요, 문제가 해결되지 않습니다. @ jAndy의 대답을보십시오. –

0

당신은 또한 작동 :contains

$(that).contains("[name]").dostuff(); 
+0

'.contains'는 텍스트가 포함 된 요소를 선택하기위한 것입니다. 귀하의 경우에는': [name]'을 검색하십시오. OP는'name' * 속성을 가진 요소를 필터링하려고합니다. –

+0

때로는 답변이 투표에 부쳐지는 것을 당황스럽게 생각합니다 .... –