更改表中特定索引的颜色

时间:2012-04-02 07:48:40

标签: javascript jquery html

一个表有两行三列。要求是,如果特定行的第二列和第三列的总和不等于12,而不是相同行的背景colou,但第一列将变为红色。

注意:第一列仅包含文字。第二和第三列包含包含整数值的文本框。

示例:

<table>
    <tr>
      <td>A</td>
      <td>2</td>
      <td>13</td>
    </tr>
    <tr>
      <td>B</td>
      <td>2</td>
      <td>10</td>
    </tr>
    <tr>
      <td>C</td>
      <td>2</td>
      <td>14</td>
    </tr>
</table>

在上面的例子中,总和2 + 13和2 + 14大于12, 所以两者的背景颜色应该变成红色。

1 个答案:

答案 0 :(得分:0)

您可以这样做:

$('tr').each(function(i, row) {
    // init sum for each new parsed row
    var sum = 0;
    // parse row children ('td')
    $(this).children('td').each(function(j, col) {
        if (j > 0) {
            // sum all columns, except first
            sum += parseInt($(col).text());
        }
    });
    // check sum
    if (sum != 12) {
        // Change background here for first column of current row
        $(row).find('td').first().css({
            backgroundColor: 'red'
        });
    }
})