使用jQuery从表条带中排除嵌套表

时间:2011-09-01 19:03:54

标签: jquery html-table jquery-selectors

我试图从表格条带中排除嵌套表格(使每隔一行都有不同的bg颜色)。这是条形表的代码:

$(".stripeTable tbody tr:odd").addClass("stripe");

我的问题是,如何防止嵌套表的奇数行接收“stripe”类?

这是从浏览器生成的代码,我想从嵌套表中删除class =“stripe”。

   <table>
      <tr>
        <td>My Table Cell </td>
      </tr>
      <tr class="stripe">
        <td>
          <table>
            <tr>
              <td>My nested table cell</td>
            </tr>
            <tr class="stripe">
              <td>my nested table cell (remove the stripe!)</td>
            </tr>
          </table>
        </td>
      </tr>
    </table>

1 个答案:

答案 0 :(得分:7)

如果只有顶级表格有stripeTable类,只需添加一些子选择器>

$(".stripeTable > tbody > tr:odd").addClass("stripe");

如果嵌套表也有stripeTable类,您可能需要使用另一个子选择器将.stripeTable锚定到另一个父元素:

$(".parent > .stripeTable > tbody > tr:odd").addClass("stripe");