0

我有一个表格,如http://jsfiddle.net/Lijo/UqdQp/4/所示。我需要将所有值为“1”的列的背景颜色设置为红色。使用 jQuery 执行此操作的最佳方式(就性能而言)是什么?

注意:做背景色后,我还需要提醒表格单元格的值。这意味着我需要在所选单元格上使用“this”运算符。

参考答案:

  1. http://jsfiddle.net/Lijo/uGKHB/11/
  2. http://jsfiddle.net/Lijo/uGKHB/12/
  3. 当表包含跨列单元格时使用 jQuery 查找列索引
4

2 回答 2

1

我已经使用eachjQuery 的功能来遍历每个表格单元格,并在匹配所需条件时突出显示该单元格。
工作演示:http: //jsfiddle.net/saji89/uGKHB/

$('.resultGridTable td').each(function()
{
    if($(this).html()==1)
    {
        $(this).css({'background':'#FF0000'});
    }        
});

使用contains选择器而不是if条件,应该更快:http: //jsfiddle.net/saji89/WbXTr/

于 2012-09-18T06:49:20.450 回答
1
var $tds = $("td").filter(function(i){
    return $(this).html() == 1;
});

$tds.css({ background: 'red' });

$.each($tds, function(i, x){
    console.log($(x).html());
});

出于显而易见的原因,我使用了 console.log 而不是 alert。

于 2012-09-18T06:55:06.637 回答