基于单元格值在3种不同的背景颜色之间进行切换,但仅限于另一个调用值不同于

时间:2015-04-09 11:20:27

标签: javascript php css

我在一段时间内得到了一些代码,用于更改表格单元格中的背景颜色;最终解决方案非常有效: change between 3 different background color based on cell value

现在我想为此添加另一个条件,请看看这里我的意思是:无法发布链接:jsfiddle dot net / Bouncer / LeyqceLe / 4 /

这可以在不失去当前功能的情况下完成吗?

3 个答案:

答案 0 :(得分:0)

这是我的朋友:jsFiddle

它获得了avai的价值:

var diff = $('td.avai').html();

然后检查avai单元格的值是否不是20,并跳过单元格着色:

if(diff != 20) {    ...    }

答案 1 :(得分:0)

如果我明白这就是你想要的吗?

// JavaScript Document
var cell = $('td.bg_status');
// Get the td value
var avai_value = $('.avai').text();

cell.each(function() {

    var cell_value = $(this).html();
    // continue if td value is not 20
    if(avai_value!=20){
        if ((cell_value >= 0) && (cell_value <=19)) {
            $(this).css({'background' : '#FF9900'});   
        } else if ((cell_value >= 20) && (cell_value <=39)) {
            $(this).css({'background' : '#99cc00'});
        } else if (cell_value >= 40) {
            $(this).css({'background' : '#99ccff'});
        }
    }
});

答案 2 :(得分:0)

我之前忘了提到我的网站正在运行Joomla! 3.我刚刚获悉Joomla不允许在jQuery代码中使用$ sign一段时间。 avai_value的行也导致错误,必须重写,如下所示:

// JavaScript Document
if(jQuery('td.avai').length){
    var cell = jQuery('td.bg_status');
    var diff = jQuery('td.avai').html();
    cell.each(function() {
        var cell_value = jQuery(this).html();
        if(diff != 20) {    
            if ((cell_value >= 0) && (cell_value <=19)) {
                jQuery(this).css({'background' : '#FF9900'});   
            } else if ((cell_value >= 20) && (cell_value <=39)) {
                jQuery(this).css({'background' : '#99cc00'});
            } else if (cell_value >= 40) {
                jQuery(this).css({'background' : '#99ccff'});
            }
        }
    });
}