2011-09-01 9 views
3

テーブルストライピングからネストしたテーブルを除外しようとしています。ここでは、テーブルをストライプに私のコードは次のとおりです。jQueryでテーブルストライピングからネストしたテーブルを除外します

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

私の質問は、私はクラスの「ストライプ」を受信すると、ネストした表の奇数行を防ぐ方法、ありますか?

ブラウザから生成されたコードは次のとおりです。ネストした表からclass = "stripe"を削除します。ネストされたテーブルは、同様stripeTableクラスを持っている場合は、あなたが.stripeTableを固定する必要があるかもしれません

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

:のみ、トップレベルのテーブルがstripeTableクラスを持っている場合は、単にいくつかの子セレクタ>追加

<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> 
+0

「stripeTable」クラスはどこですか? – BoltClock

答えて

7

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

素晴らしいです、ありがとうございます。私はtbodyの前に ">"を持っていましたが、trの前にそれが必要であることがわかりました。 – hbowman

+0

はい、 'tr'もネストしているので、そうでなければ選択されます。 – BoltClock

関連する問題