2013-02-12 1 views
2

문자열을 검색하고 일치하는 요소를 얻는 가장 좋은 방법은 무엇입니까?js 검색 문자열 및 일치하는 요소 가져 오기

//I want to get similar or matched element and the index of it. 
//Search key ward 
var key = 'Pap'; 
<ul> 
<li>Papa</li> 
<li>Mama</li> 
</ul> 

내 생각은 지금 $.each을 사용하고 각각의 텍스트와 일치하지만, 나는 그것이 잘못된 방법이 될 전망이다. 그러나, 나는이 질문에 대해 net에서 어떤 참고 문헌도 찾을 수 없었다.

대단히 감사합니다.

답변

6

사용 :contains 선택

$('*:contains("'+key+'"):last') 

$.fn.exactMatch = function (key) { 
    var p = $(this).find(':contains("' + key + '"):last'); 
    if (p.text() == key) { 
     p.css('background', 'yellow'); 
    } else { 
     //Not exact match function if wanted 
    } 
} 

이 기능이

$(el).exactMatch(key); 
+0

매우 감사 할 사용하려면 요소의 전체 텍스트이 사용됩니다 일치를 찾으려면! 내가 시도하자. – Till

+0

': last'는 무언가를 놓치지 않으면 중복되는 것처럼 보입니다. – Cerbrus

+1

contains를 사용하면 선택하려는 요소의 부모를 모두 가져옵니다. 그래서 마지막으로 "key"가 포함 된 정확한 요소를 얻습니다. – Anton

관련 문제