2013-03-14 44 views
1

我有幾個表具有相同的類,每個都有2行。我想給第二行的每個表中的td元素一個特定的類,但是我這樣做的方式只能用於第一個表,並且我不知道爲什麼。幾個表具有相同的類,只有第一個表中的行受到影響,爲什麼?

$('#main table.asseenin_table tr:eq(1) td').addClass('asi_second'); 

只有FIRST表中第二行的td元素得到這個類,其他表沒有。

<table class="asseenin_table"> 

       <tr> 
        <td><a href="#"><img src="images/asseenin/1.jpg" /></a></td> 
        <td><a href="#"><img src="images/asseenin/2.jpg" /></a></td> 
        <td><a href="#"><img src="images/asseenin/3.jpg" /></a></td> 
        <td><a href="#"><img src="images/asseenin/4.jpg" /></a></td> 
        <td><a href="#"><img src="images/asseenin/5.jpg" /></a></td> 
       </tr> 

       <tr> 
        <td> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        </td> 

        <td> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        </td> 

        <td> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        </td> 

        <td> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        </td> 

        <td> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        </td> 
       </tr> 

      </table> 

      <table class="asseenin_table"> 

       <tr> 
        <td><a href="#"><img src="images/asseenin/6.jpg" /></a></td> 
        <td><a href="#"><img src="images/asseenin/7.jpg" /></a></td> 
        <td><a href="#"><img src="images/asseenin/8.jpg" /></a></td> 
        <td><a href="#"><img src="images/asseenin/9.jpg" /></a></td> 
        <td><a href="#"><img src="images/asseenin/10.jpg" /></a></td> 
       </tr> 

       <tr> 
        <td> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        </td> 

        <td> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        </td> 

        <td> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        </td> 

        <td> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        </td> 

        <td> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        <a href="#"><img src="images/asseenin/thumbs/thumb.jpg" /></a> 
        </td> 
       </tr> 

      </table> 
+0

把一些HTML發佈。 – 2013-03-14 10:13:56

回答

1

嘗試http://api.jquery.com/eq/使用:last-child代替eq

$('#main table.asseenin_table tr:first-child td').addClass('asi_second'); 
+0

但我有2 tr,只想瞄準第二個tr,而不是第一個tr。 – 2013-03-14 10:21:54

+0

然後使用:最後一個孩子 – Adil 2013-03-14 10:23:09

+0

這個工作,謝謝,但如果我有3 tr並想要瞄準第二個?有沒有一種方法可以專門針對SECOND或THIRD等? – 2013-03-14 10:26:10

1

由於文件說:Description: Reduce the set of matched elements to the one at the specified index.:eq(1)後,所以你只有一個元素。

解決您的問題用:nth-child()http://api.jquery.com/nth-child-selector/):

$('#main table.asseenin_table tr:nth-child(1) td').addClass('asi_second'); 
+0

但是,我該如何定位SECOND TR,而不是第一個? – 2013-03-14 10:23:01

+0

對不起,您的帖子誤讀。我會編輯我的答案。 – iappwebdev 2013-03-14 10:23:47

-1

也許是這樣的: -

$('.main table.asseenin_table tr:eq(1) td').addClass('asi_second'); 
(變 「#」 這ofcourse添加類表並刪除ID 「」)
+0

仍然選擇第一個tr。 'tr:eq(1)'將結果簡化爲一個元素。 – iappwebdev 2013-03-14 10:20:13

相關問題