2015-02-26 73 views
3

下面的代码从网页上的mysql创建一个表,并根据性别列值为男性或女性更改列背景颜色,但是我想扩展此更改行的颜色无需使用javascript/jquery。请有人可以帮助我吗? :)根据条件更改表格行

while($tablev2=mysql_fetch_assoc($records)) { 

echo "<td>".$tablev2['primary_key']."</td>"; 

echo "<td>".$tablev2['name']."</td>"; 

if($tablev2['gender']=='male') 
    echo "<td style='background-color:powderblue;'>".$tablev2['gender']."</td>"; 

elseif($tablev2['gender']=='female') 
    echo "<td style='background-color:pink;'>".$tablev2['gender']."</td>"; 
    else echo "<td>".$tablev2['gender']."</td>"; 

echo "<td><a target = '_blank' href='".$tablev2['link']."'>Click to see their facebook profile</a></td>"; 

echo "</tr>"; 

}

+0

使用类而不是内联样式。 – sectus

+0

那个在哪里?在“while”循环之前吗?你能否添加这部分来获得完整的答案? –

+0

有趣,我刚刚被要求使用类。是什么user3766955发布了一个良好的开始实施类解决方案? –

回答

1

你只需要上取决于性别值的“TR”标签应用样式。

if($tablev2['gender']=='male'){ 
    echo '<tr class="bg-male">'; 
}elseif($tablev2['gender']=='female'){ 
    echo '<tr class="bg-female">'; 
} 
1
while($tablev2=mysql_fetch_assoc($records)) { 
if($tablev2['gender']=='male') 
    echo "<tr style='background-color:powderblue;'>"; 
elseif($tablev2['gender']=='female') 
    echo "<tr style='background-color:pink;'>"; 
else 
    echo "<tr>"; 

    echo "<td>".$tablev2['primary_key']."</td>"; 

    echo "<td>".$tablev2['name']."</td>"; 

    echo "<td>".$tablev2['gender']."</td>"; 

    echo "<td><a target = '_blank' href='".$tablev2['link']."'>Click to see their facebook profile</a></td>"; 

    echo "</tr>";} 

使用的背景颜色为TR标签,而不是TD标签。 否则你必须申请所有TD,这是一个不好的做法。

+0

感谢您发布答案。这对我真的很好! –

+0

@LeoK:如果它确实有效,请将我的答案投票并接受。 谢谢! –

+0

Stackoverflow说我需要15点声望,然后才可以upvote。否则,我会@Parag Soni –