当数字低于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>
答案 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>