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

标签 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 并匹配每个的文本,但我认为这应该是错误的方法。但是,我在网上找不到关于这个问题的任何引用资料。

非常感谢。

最佳答案

使用: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);

关于javascript - js 搜索字符串并获取匹配的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14829687/

相关文章:

javascript - 在下划线中使用去抖功能

javascript - 在 CI 上使用 jquery 操作分页,但链接已更新

javascript - javascript/jquery 中 .results 函数和 .result 函数之间的区别?

javascript - 如何在不使用 jQuery 的情况下隐藏 Html 元素并使用 jQuery.show() 显示?

string - 如何子串 0 到 30,但前提是超过 30 个字符

javascript - 添加新Fieldset时如何保留之前输入的内容

javascript - 从 JavaScript 访问 Prestashop 网络服务

javascript - 手动创建的 JSON 记录

java - 为什么在java中尝试将大写字母转换为小写字母时末尾会出现额外的空格,反之亦然

c# - 如何从控制台应用程序中以 Dictionary<string,string> 的形式获取命名参数?