2011-02-02 5 views
0

私はテーブルソーター関数を書こうとしているので、テーブルのn番目の行のn番目の列のHTMLを取得する必要があります。 (それはnullを返し、その特定のカラムは間違いなくそれの内のテキストを持っている)私は、次のことを試みたが、それはうまくいきませんでした:jqueryの:eq()セレクタを同じ式で2回使うことはできますか?

$('tr:eq(3) td(eq(2)').html() 

しかし、その後のコードでは、私はこれを使用する場合、それは正常に動作します:

$('tr:eq(3)').attr('id') 

:eq()を2回使用できませんか?もしそうなら、それを間違って呼んでいますか?そうでない場合、私はこれを別の方法でやることができる方法はありますか?

答えて

2

さてあなたは代わりにここで:(を持っている:

td(eq(2) 

の代替ではなく、0ベースの1ベースのインデックスを使用する:nth-child()次のとおりです。

$('tr:nth-child(4) td:nth-child(3)').html() 
4

@BoltClockはjQueryのを持っていますあなたのために修正in his answer

FYIでは、ネイティブメソッドを使用して簡単に行/列にアクセスできます。

テーブル要素からは、ちょうど.rows[3].cells[2]を実行します。これは、セルのルックアップを行う非常に速い方法です。

var myTable = $('#theTable')[0]; 

var html = myTable.rows[3].cells[2].innerHTML;