2010-06-27 66 views

回答

14

您可以使用.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(); 
相关问题