jQuery选择器 - 匹配元素的内容

时间:2011-01-12 20:05:45

标签: javascript jquery

有没有办法 - 任何jQuery选择器(我确实在http://api.jquery.com/category/selectors/找不到),可以用作完全匹配?

:contains()几乎是我所需要的,但并非完全如此。 “:contains”搜索每个元素正则表达式,如下所示:

.*<query>.*

这意味着,如果我需要找到链接,看起来完全像这样:

<a href="#">Baxter</a>

并使用此:

$("a:contains('Baxter')")

它也匹配这个,我不想匹配:

<a href="#">I'm Peter Baxter, how are you?</a>

我知道,我可以采取所有元素并在周期中比较它们的内容,但我想确定,没有更简单的方法。

1 个答案:

答案 0 :(得分:12)

不,但添加插件会很简单:

$.expr[':'].contentIs = function(el, idx, meta) {
    return $(el).text() === meta[3];
};

然后您可以将其用作$('a:contentIs("Baxter")')