2016-10-26 25 views
0

友人、私はこれをたくさん試しましたが、どこが間違っているのか分かりません。セル内容に応じてデータテーブルのセルを色付けしようとしています何も起こっていない。私はfnrowcallback関数、Createdrow関数を使ってみましたが、何も問題はありません。比較演算子を「等しくない(!=)」に変更すると、テーブルのすべてのセルが色付けされますが、「等しい(==)」の場合、必要に応じて動作しません。 3列目のセルに「A」または「土」が含まれている場合は、コードを確認してください。 ADATAのdataypeをチェックしてみセルの内容に応じてデータテーブル内の特定の行に色を付ける

$('td:contains("three")').css('background', 'red'); 
 
$('td:contains("two")').css('background', 'yellow');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table> 
 
<tr><td>one</td><td>two</td></tr> 
 
<tr><td>three</td><td>four</td></tr> 
 
</table>

+0

コードをデバッグしてみてください。 'aData [2]'の値が何であるかを確認してください。 – tejashsoni111

+0

'if(aData [2] ==" A ")'の直前に 'console.log(aData [2])'を置くと、何が見えますか? –

+0

この場合はelseを使用しないでください。他の条件を実行するには、最後にelseブロックが必要です。 if(条件){//コード} else if(条件){//コード} else {/ code} – pro

答えて

0

はたぶんこれはあなたのために働くです。そのオブジェクトは、オブジェクト表記法でそれにアクセスして、あなたに未定義を与えてはいけません。私の推測では、それはjsonの文字列かもしれない?

0

:ここ あなたはjQueryのを使用するために喜んでいる場合は、私のコード -

"fnRowCallback": function(nRow, aData, iDisplayIndex, iDisplayIndexFull) { 
    if (aData[2] == "A") 
    { 
     $('td', nRow).css('background-color', 'pink'); 
    } 
    else if (aData[2] == "Sat") 
    { 
     $('td', nRow).css('color', 'Orange'); 
    } 
} 
関連する問題