2011-07-20 9 views
0

私はそれに行があるテーブルを持っています。jqueryは現在の行クラスを変更します

私がダウンキーまたはエンターキーを使用するときに、異なる行をハイライトしたいとします。私はkeypressイベントを動作させていますが、現在の行を元の強調表示されていないクラスに変更することに問題があります。

私は次の行の値を変更する方法を考え出しましたが、私が来ている行から値をリセットする必要があります。

これは、私が強調されたクラスの隣に「TR」に変更するために使用しているコードです:

$(a).closest("tr").next().toggleClass("LUGridRowHighlight"); 

私に知らせてください。

更新:

私はデータの5行を持つテーブルがあります。 マイキープレスコードは、最終的に5行

でテーブルを上下に移動したりします「」私は下矢印(キーコード40)を押すと、私はことを現在選択されている行を変更したいのTableRow要素

を表しクラスLUGridRowHighlightがLUGridRowだけにあります。次に、下の行をハイライトクラスに変更します。

私ができることは、下の行をハイライトされたクラスに変更することだけです。私はまた、私が来る行のクラスを変更したい。

+0

あなたはプロができいくつかのコードを追加しますか?このコードはどこで発生するのですか? HTMLとは何ですか? – VMAtm

+0

「a」は? Keypressコード?正確に何をリセットしますか?お願いします.... –

答えて

2

あなたがに「非強調表示」のすべての行を設定することができます"非強調表示" クラス:

 
$('#table_id tr').removeClass("LUGridRowHighlight"); 
1

toggleClassはjQueryオブジェクトを返すので、あなたが行うことができるはずと思われる:

$(a) 
    .closest("tr") 
    .toggleClass("LUGridRowHighlight") 
    .next() 
    .toggleClass("LUGridRowHighlight"); 

か:

$(a) 
    .closest("tr") 
    .removeClass("LUGridRowHighlight") 
    .next() 
    .toggleClass("LUGridRowHighlight"); 
1
$(a).closest("tr").nextAll("tr").find("tr:first").toggleClass("LUGridRowHighlight"); 
関連する問題