我需要在jQuery中根据文本选择一个元素.
例如:
<span>this text</span>
Run Code Online (Sandbox Code Playgroud)
我知道我可以使用.contains()根据文本进行选择,但它并不是唯一的.
我不想选择:
<span>this text and that text</span>
Run Code Online (Sandbox Code Playgroud)
我想选择元素,如果它是元素的唯一文本.
除了使用正则表达式,我如何使用jQuery选择器?
谢谢.
Dav*_*res 34
你对:contains选择器有一些影响,但这只是到目前为止.您需要根据精确的文本匹配进一步减少元素集,如下所示:
$("span:contains(this text)")
.filter
(
function()
{
return $(this).text() === "this text";
}
)
Run Code Online (Sandbox Code Playgroud)
这使得初始包含在技术上不需要使用,但是在过滤到您感兴趣的确切集合之前,您可以通过开始使用较小的SPAN元素集合来体验性能优势.
编辑:采用Ken Browning的建议,在text()
函数中使用函数代替innerHTML
字符串比较filter
.这个想法innerHTML
将捕获我们并不特别感兴趣的文本(包括标记).
归档时间: |
|
查看次数: |
7502 次 |
最近记录: |