对负数值进行jquery条件格式化

时间:2013-09-25 19:27:55

标签: jquery

我能够找到一些例子并将各种东西拼凑在一起以使其正常工作。

$(".status").filter(function () {
    return (/\(\)/).test($(this).html());
})
    .closest(\'td\').css(\'background-color\', \'red\');
});

但是,我需要进一步考虑可扩展条件格式的负值。

如果td的值为正,则背景颜色应为绿色。 如果td的值是负数,它在parantheses(###,###)中表示,那么我想根据这些条件进行评估。

(1) thru (199,999) =  .closest('td').css('background-color', 'yellow');

(200,000) or greater = .closest('td').css('background-color', 'red');

1 个答案:

答案 0 :(得分:1)

.css()接受一个函数作为值参数。

这是一个可能的解决方案:

http://jsfiddle.net/JUJBj/

$(".status").filter(function () {
    return (/\(.+\)/).test($(this).html());
}).closest('td').css('background-color', function() {
    var val = parseInt($(this).find('.status').text().replace(/\(|\)/g, ''), 10);
    return val >= 200000 ? 'red' : 'yellow';
});