2010-12-16 13 views
2

多くの見た目でしたが、見つけられませんでしたが、$(document).readyイベントでjQueryを使用して代替行の色を適用しました。jQueryを使って動的/ ajaxテーブル行の代替色を更新する

$(document).ready(function(){ 

    //Member Directory Table 
    $('.MemberDetail table tr:odd ').css('background','#F0F0EC'); 
} 

の色が適用されますが、表がajaxリクエストで更新されても色は更新されません。だから、そのテーブルに代替色を適用するより良い方法は何でしょうか?

このページの例があります:Ajaxが完了したときに

Here Dynamic Table

答えて

5

このスクリプトを使用する必要があります。私は

$.ajax({ 
    url: 'ajax/test.html', 
    success: function(data) { 
    //to do your jQuery code again; 
    $('.MemberDetail table tr:odd ').css('background','#F0F0EC'); 
    } 
}); 
0

のようなものだけで再びテーブルを更新する意味:

$('.MemberDetail table').find('tr:odd').css('background','#F0F0EC').end().find('tr:even').css('background','#fff'); 

を自動的にそれらの色を維持するために魔法の方法はありませんが、ちょうどあなたがテーブルを更新するたびに更新する必要があります。

1

あなたは例えば、このいずれかのようCSSクラスを使用する場合は、AJAX要求

function ajax() { 
doAjaxStuff(); 

$('.MemberDetail table tr:odd ').css('background','#F0F0EC'); 
} 
0

た後、再びテーブルの色の機能を実行する必要があります:代替を適用する

.alternate 
{ 
    background: #e6f4ff; 
} 

テーブル行を動的に追加するには、jQueryを実行してから、次のようにします。

$("table tbody tr").removeClass("alternate").filter(":odd").addClass("alternate"); 

これは、あなたが何をするにしても、行を正しく色づけることができます:<table>行を追加または削除しますか。

<table>が変更されるたびに常にコードを実行する必要があることを覚えておいてください。

関連する問題