2010-11-19 6 views
1

Jquery:contains関数は、文字列のインスタンスを見つけるという点で非常に優れています。しかし、もし私がこれを実行しているのなら、第2列に次のものが含まれているテーブルの関数があります。JQuery:文字列の最初のインスタンスと単一のインスタンスを含む

0 
20 
01 
44 

上記の表で列の値を指定して実行すると、以下のコードはすべての行に "0"が返されます。したがって、基本的に "44"を除くすべての行。

$('.application>tbody>tr') 
.show() 
.find("td:nth-child(2).not(':contains("0")') 
.parent() 
.hide() 
} 

どのようにして、単一の「0」がある行はなく、そのような「20」として「0」を含む他の行のコードのリターンを作って行くでしょう。

誰かが正しい方向に向けることを願っています。ありがとうございました。

答えて

2

あなたは、たとえば、このため.filter()を使用することができます。

$('.application>tbody>tr') 
.show() 
.find("td:nth-child(2)") 
.filter(function() { return $.text([this]) != "0"; }) 
.parent() 
.hide() 

これは正確なテキストではなく、部分文字列を比較します。

+0

それは意味がありますが、私は "$。テキストはファンクバグではありません"ということになります。何か案は? –

+0

@Lord - どのバージョンのjQueryを使用していますか?長いバージョンは$(this).text()!= "0"; '、それはちょうど無駄です。 –

+0

こんにちは。 1.3.2?ありがとう。 –

関連する問題