如何在jQuery中操作表行

时间:2012-06-21 01:46:42

标签: jquery css html-table css-selectors alternating

我在一个页面上有几个表。

我正在突出显示每一行以及样式禁用输入来自CSS的不可编辑数据。

以下是我目前使用的代码。效果是具有可编辑数据的列是交替的白色和金色。具有不可编辑数据的列是交替的灰色和金色。 (到目前为止,您可以在此网格中编辑哪些列的可视指示器。)

$(document).ready(function()
{
  $("tr:even").css("background-color", "#DEDEBC");
  $("tr:even input").css("background-color", "#DEDEBC");
});

CSS

input[disabled='disabled'] {
   text-decoration:none; 
   text-indent:5px; 
   color:#006;
   border:none;
   -webkit-box-shadow:0 0 0 #666 inset; 
   -moz-box-shadow:0 0 0 #666 inset; 
   box-shadow:0 0 0 #666 inset;
}

我真的只想在我正在处理的当前页面上的一个表(第二个表)上使用此行为,但我对jquery并不熟悉。在其他页面上,我需要在几个表中的2或3个表格中使用它。

另一个问题是这段代码会继续表格的奇偶校正。如果上一个表中的最后一行是偶数,则下一个表中的第一行被认为是奇数,反之亦然。

如何修改jQuery以选择特定的表?如何使用新表重新开始?

1 个答案:

答案 0 :(得分:2)

仅提供要为班级colorize着色的表格 用这个替换你的jQuery代码:

$(function(){
    $('table.colorize').each(function(){
        $('tr:even, tr:even input', this).css("background-color", "#DEDEBC");
    });
});

这将只为您使用类定义的表着色,并为每个表重置偶数。