首页 文章

更改行值PHP时更改表格背景颜色

提问于
浏览
0

我有一个关于PHP的表,如下所示,我需要,当第一列更改值时,行会改变颜色 . 例如:在示例中的表格中,第一行和第二行将为红色,第三行将为蓝色,第四行将为红色,依此类推

<table>
<tr>
    <td>1</td>
    <td>Test 1</td>
    <td>Today</td>
</tr>
<tr>
    <td>1</td>
    <td>Test 2</td>
    <td>Tomorrow</td>
</tr>
<tr>
    <td>2</td>
    <td>Test 3</td>
    <td>Yesterday</td>
</tr>
<tr>
    <td>3</td>
    <td>Test 1</td>
    <td>Next Saturday</td>
</tr>
</table>

我可以用CSS,jQuery或其他语言做,但我需要帮助 .

谢谢

4 回答

  • 0

    试试这个:

    $bgcolor       = ""; 
    $new_bgcolor   = "#F1F1F1";
    $bgcolor_trans = "";
    
    if ( $current_row > $last_row ){
       $bgcolor_trans = $bgcolor;
       $bgcolor       = $new_bgcolor;
       $new_bgcolor   = $bgcolor_trans;    
    }
    
  • 0

    您可以为TR设置两个类,例如rowOdd&rowEven

    $days = array(1=>'Day1', 2=>'Day2', 3=>'Day3');
    $trClass='Odd';
    echo '<table>';
    foreach ($days as $key=>$value) {
        echo '<tr class="row'.$trClass.'"><td>'.$key.'</td><td>'.$value.'</td></tr>';
        if ($trClass=='Odd') { $trClass='Even'; } else { $trClass='Odd'; }
    }
    echo '</table>';
    

    CSS

    .rowOdd { background-color: #F00; }
    .rowEven { background-color: #0F0; }
    
  • 0

    请记住,您始终可以在堆栈溢出中搜索问题的答案 . 你不是第一个遇到这种问题的人 .

    请参考以下内容:

    Adding PHP alternate table row colours to existing HTML table

  • 0

    您可以使用可用于计数的标志 .

    例如:

    $count = 0;
    while($rows = mysql_fetch_array($query)){
        $count++;
        if(($count%2) == 0){
            echo '<tr style="background:#FFF">';
            echo    '<td>';
            echo    '</td>';
            echo '</tr>';
        }
        else{
            echo '<tr style="background:#000">';
            echo    '<td>';
            echo    '</td>';
            echo '</tr>';
        }
    }
    

相关问题