更改负数字体css

时间:2017-12-21 11:27:07

标签: javascript jquery css

当数字低于0时,我尝试将字体颜色更改为红色。由于stackoverflow的答案,我设法让整行变为红色,但无法将其交给字体本身。

<?php echo $coin_gain; ?>会显示一个可以为负数的数字。

<tr>
    <td><?php echo $coin_name; ?></td>
    <td><?php echo $coin_price; ?></td>
    <td class="status"><?php  echo $coin_gain; ?>%</td>
</tr>

<script>
    $(document).ready(function() {
        $(".status").each(function(){
            var value = parseInt ( $( this).html() );
            if (value < 0){
                $(this).parent().css('background-color', 'red');
            }
        });
    });
</script>

4 个答案:

答案 0 :(得分:1)

<tr>
    <td><?php echo $coin_name; ?></td>
    <td><?php echo $coin_price; ?></td>
    <td class="status"><?php  echo $coin_gain; ?>%</td>
</tr>

<script>
    $(document).ready(function() {
        $(".status").each(function(){
            var value = parseInt ( $( this).html() );
            if (value < 0){
                $(this).css('color', 'red');
            }
        });
    });
</script>

您只需删除父选择器以定位单元格而不是行。

答案 1 :(得分:1)

如果您要定位单元格,请移除.parent()

if (value < 0){
    $(this).css('color', 'red');
} else {
    $(this).css('color', 'green');
}

当您添加.parent()时,您定位了单元格的包含元素(<td>),即行(<tr>

答案 2 :(得分:1)

如果使用PHP输出,那么也使用PHP处理类:

对于字体颜色,它是color: #000000而不是background-color

<?php $isPositive = $coin_gain >= 0; ?>
<tr style="background-color: <?= $isPositive ? 'green' : 'red'; ?>>
    <td><?= $coin_name; ?></td>
    <td><?= $coin_price; ?></td>
    <td class="status" style="color: <?= $isPositive ? 'green' : 'red'; ?>><?= echo $coin_gain; ?>%</td>
</tr>

答案 3 :(得分:0)

<tr>
    <td><?php echo $coin_name; ?></td>
    <td><?php echo $coin_price; ?></td>
    <td class="status"><?php  echo $coin_gain; ?>%</td>
</tr>

<script>
    $(document).ready(function() {
        $(".status").each(function(){
            var value = parseInt ( $( this).html() );
            if (value < 0){
                // this will change the color of font 
                $(this).css('color', 'red');
            }
        });
    });
</script>