2011-01-12 10 views
8

何かjQueryセレクタ(私はhttp://api.jquery.com/category/selectors/には見つかりませんでした)は完全一致として使用できますか?jQueryセレクタ - 要素の内容に一致する

:contains()は、私が必要とするものですが、厳密にはそうではありません。 :各要素での検索は、このようregexで "を含む":

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

をそして、この使用します:

を私は、まさにこのようになります。これは、リンクを見つける必要がある場合には、意味

.*<query>.* 

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

それは私が一致したくない、またこれに一致します。

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

サイクルの中ですべての要素を取り、その内容を比較することはできますが、私は確信したいと思います。

答えて

12

ありませんが、プラグインとして追加するのは簡単だろう:あなたはその後、本当にいい、少し延長厥$('a:contentIs("Baxter")')

+0

としてこれを使用することができます

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

。なぜこれが中核でないのだろうか? –

+1

@ P.scit非常に高価です(計算上は...)。これを見ても、 '$(el)ではなく$ .text([el])で改善することができます。テキスト() '。 – lonesomeday

関連する問題