質問

通常のHTMLテーブル用に使用します

 $('table.alt tr:even').addClass('bg');

テーブルを縞模様にするため。しかし、明らかにそれはAjaxでは機能しません。すべての新しいテーブルローのインデックスは「-1」であるため、すべての新しい行がクラスを取得します。

からのライブクエリプラギンでさえ http://brandonaaron.net 私を助けることはできません。助言がありますか?

役に立ちましたか?

解決

さて、そのコードを追加して、既存のすべてのストリップを削除するコードを追加してみてください。 グローバル .ajaxSuccess() イベント Ajax呼び出しが完了するたびに実行されるようにしますが、実際にテーブルを変更するいくつかの異なるAjaxコールを使用して作業している場合、それはひどく効率的な方法ではありません。

また、に含めることができる関数を定義することもできます success ajax通話のコールバック

function stripTable(){
     $('table.alt tr').removeClass('bg').filter(':even').addClass('bg');
}

これにより、既存のテーブルに新しい行を挿入すると、ストリップが台無しになります。

もちろん、CSSを使用することはこれを行うための最良の方法ですが、これにjQueryを使用しているため、ここでは後方互換性が重要な問題であると思います。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top