jquery - 我可以使用 jQuery 按内容选择文本节点吗?

标签 jquery jquery-selectors

如何选择 <a href="...">foo</a> DOM节点,知乎 foo

最佳答案

您可以使用.filter() ,像这样:

$("a").filter(function() {
  return $(this).text() === "foo";
}).doSomething();

还有:contains()如果您不需要完全匹配,请选择选择器,如下所示:

$("a:contains('foo')").doSomething();

如果您要查找的文本位于元素中的任何位置,则此方法有效,而不是完全匹配。

<小时/>

或者,如果您想精确匹配并经常执行,请为此创建一个选择器,如下所示:

$.expr[":"].textEquals = function(obj, index, meta) { 
  return $(obj).text() === meta[3]; 
} 

然后您可以随时使用它,如下所示:

$("a:textEquals('foo')").doSomething();

关于jquery - 我可以使用 jQuery 按内容选择文本节点吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3128656/

相关文章:

javascript - 将选中的属性添加到 TR 中最接近的复选框

javascript - 在 jQuery 的表中需要一个固定和可滚动的列

jquery .animate() 不起作用

javascript - 在元素列表中,将编号索引放在 id 中还是使用索引选择器?

TR 中的 Jquery 选择器

jquery - 排除jquery中visited/hover效果的logo部分

php - Codeigniter如何在 Controller 中接收ajax post数据

jquery - JQuery 的子选择未按预期工作

用于选择具有空值属性的元素的 jQuery 选择器?

jquery css 将输入大纲更改为无