根据td值更改文本颜色

时间:2016-05-19 23:03:59

标签: javascript php html5 css3

我有一个表从我的Mysql数据库中返回值而没有问题。如果从单选按钮中选择了五个值中的两个,我想要做的是将字体颜色更改为绿色。

我希望改变颜色的字段是"类别"如果价值是素食或素食主义者的字段。所有其他选项将是默认颜色(黑色)。

这是我的代码,显示表格数据,按我的意愿显示:

$richOutput = widgets\RichText::widget(['text' => $post->message,     'record' => $post]);
$richOutput_rname = widgets\RichText::widget(['text' => $post->rname, 'record' => $post]);
$richOutput_category = widgets\RichText::widget(['text' => $post->category, 'record' => $post]); ?>
<table>
<tr><td><span id="post-content-<?php echo $post->id; ?>" <?php print $richOutput; ?></span></font></td></tr>
<tr><td><span id="post-content-rname-<?php echo $post->id; ?>" <?php print $richOutput_rname; ?></span></td></tr>
<tr><td><span id="post-content-category-<?php echo $post->id; ?>" <?php print $richOutput_category; ?></span></td></tr>
</table>

提前谢谢!

修改

我尝试添加以下JS,但是当值=&#34时,它没有改变文本颜色;&#34;:

    <script type="text/javascript">
$('.cat').each(function(i, n) {
   if($(n).text() = "Vegan") $(n).css('color', '#8A1010');
});
</script>

2 个答案:

答案 0 :(得分:0)

我没有测试过这个,但它应该是正确的。你应该明白这个想法。

 <tr><td><span id="post-content-category-<?php echo $post->id; ?>" <?php $richOutput_category == "Vegan" ? echo 'style="color: #8A1010"' : echo '' ?>><?php print $richOutput_category; ?></span></td></tr>

你也错过了&#39;&gt;&#39;在span标签上(所有这些)。

答案 1 :(得分:0)

这样做的好方法是创建一个CSS类并使用PHP将其应用于该行。从分离关注角度来看,这使得样式(CSS)与您的内容(HTML)和行为(Javascript)分开。

样式表包含:

.text_normal {
    color: #000;
}
.text_vegan-vegetarian {
    color: #8A1010;
}

使用PHP将类添加到表行:

$richOutput = widgets\RichText::widget(['text' => $post->message,     'record' => $post]);
$richOutput_rname = widgets\RichText::widget(['text' => $post->rname, 'record' => $post]);
$richOutput_category = widgets\RichText::widget(['text' => $post->category, 'record' => $post]);

$class = 'text_normal';
if ($post->category == 'Vegan' || $post->category == 'Vegetarian') {
    $class = 'text_vegan-vegetarian';
}

?>
<table>
<tr><td><span id="post-content-<?php echo $post->id; ?>" <?php print $richOutput; ?></span></font></td></tr>
<tr><td><span id="post-content-rname-<?php echo $post->id; ?>" <?php print $richOutput_rname; ?></span></td></tr>
<tr class="<?= $class ?>"><td><span id="post-content-category-<?php echo $post->id; ?>" <?php print $richOutput_category; ?></span></td></tr>
</table>

使用单独的样式表可以添加许多其他样式,而不会使HTML代码变得混乱。例如:

.text_normal {
    color: #000;
    background: #0CF;
    font-weight: bold;
    padding: 24px;
    line-height: 24px;
}
.text_vegan-vegetarian {
    display: none;
}