1

DataTablesにSQLデータを表示する方法は2つあります。1つ目は、ループを使用してhtmlテーブルを作成することです。2番目のオプションは、sAjaxsourceを使用することです。

以下に示すように、最初の解決策でそれぞれの色を変更するの<tr>は簡単です。

<table>
<thead>
  <tr>
    <th>id</th>
    <th>Customer Number</th>
    <th>WCODE</th>
  </tr>
</thead>
<tbody>
  <?php  while ($row = mysql_fetch_array($result)) :?>

    <tr style="background-color:<?=$row['COLOR']?>;" >
      <td ><?=$row['id']?></td>
      <td ><?=$row['customer_number']?></td>
      <td ><?=$row['WCODE']?></td>
    </tr>

  <? endwhile; ?>
</tbody>
</table>

ご覧のとおり、$row['COLOR']は各行の色です。

2番目のオプションsAjaxsourceを使用して同じ結果を達成したいと思います。は<tbody>空で、各trを制御できません。trはありません。

何か案は?ありがとう。

4

2 に答える 2

0

単純なphpを使用して、変更します。

<tr style="background-color:<?=$row['COLOR']?>;border:1px solid;" >

echo "<tr style=\"background-color:".$row['COLOR'].";border:1px solid;\" >";
于 2013-02-05T16:06:00.893 に答える
0

彼らのドキュメントを見ると、これを行うためのクリーンで簡単な方法はないようです。Note: I'm not familiar with this plugin. And I briefly skimmed their docs.

おそらく、もっと良い解決策があるかもしれませんが、返されたセルの1つに(各行に対して)のようなhtmlタグを追加することをお勧めします<span class="SOMECLASS" style="background-color:YOURCOLOR; display: none;"></span>

テーブルが作成されてロードされたら、次のように実行します。

$('tr span.SOMECLASS').each(function() {
    $(this).parents('tr:first').css('background-color', $(this).css('background-color'));
});

しかし、私もいくつかの意見をミックスに投げ込みたいと思います。UIの色をデータベースに保存することはベストプラクティスではありません。おそらく、行を特定の色にする必要があるかどうかを判断するために、データに対して後処理を行う必要があります。

お役に立てれば。

于 2013-02-05T16:12:37.550 に答える