js搜索字符串并获取匹配的元素

时间:2013-02-12 09:51:50

标签: javascript jquery string search match

我想问一下搜索字符串并获取匹配元素的最佳方法是什么?

//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并匹配其每个文本,但我认为这应该是错误的方式。但是,我找不到网上关于这个问题的任何参考资料。

非常感谢。

1 个答案:

答案 0 :(得分: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);