2017-11-24 26 views
1

私はサーバーからの値に応じて1つのtdの色を変更する必要があるデータテーブルを作成しています。値に応じてデータテーブルのセルの色を変更します

今のところ、完全な行の色を正常に更新しましたが、行内の1つのセルのみの色を変更することはできません。

現在の結果は添付の画像を参照してください。

enter image description here

あなたはそれが行の全体の色を変える見ることができますが、私は唯一の第二列の色を変更する必要があります。ここ

は私のコードです:

"fnRowCallback": function(nRow, aData, iDisplayIndex, iDisplayIndexFull) { 
      if(aData.statusCode == "FAILED"){ 
       $("td", nRow).css("background-color", "Red"); 
      } 
      if(aData.statusCode == "RUNNING"){ 
       $("td", nRow).css("background-color", "green"); 
      } 
     } 

私はjQueryののCSS機能を持つ色を変更するバージョンのDataTableに1.10.15

答えて

1

を使用しています、また、そうでない最善の方法ではありません期待どおりに動作します。

より良い特定のTDにクラスを追加します。

"fnRowCallback": function(nRow, aData, iDisplayIndex, iDisplayIndexFull) { 
    if(aData.statusCode == "FAILED"){ 
    $("td:nth-child(2)", nRow).addClass("failed"); 
    $("td:nth-child(2)", nRow).removeClass("running"); 
    } 
    if(aData.statusCode == "RUNNING"){ 
    $("td:nth-child(2)", nRow).removeClass("failed"); 
    $("td:nth-child(2)", nRow).addClass("running"); 
    } 
} 

CSSは次のようになります。

td.failed { 
    background-color: red; 
} 
td.running { 
    background-color: green; 
} 

を編集

を追加しました:(2)n番目の子をTDのセレクタ。

関連する問題