2013-02-19 116 views
5

我有一個錶行中的行和多個TD,這樣的:使用jQuery選擇第三個​​?

<tr class="first odd"> 
    <td class="a-center"> 
    <td>...</td> 
    <td>...</td> --> I want this 
    <td>...</td> 
    <td>...</td> 
    <td>...</td> 
</tr> 

我能夠得到所有的TDS的父TR,但有沒有辦法讓裏面的第3個TD只有tr?

的代碼來獲取TR是:

jQuery('#shopping-cart-table > tbody > tr').each(function(index, value) { 
    ... 
}); 

感謝

+0

可能重複的[如何選擇使用jquery一個TR的第n TD](http://stackoverflow.com/questions/7229145/how-to-select -th-td-of-tr-using-jquery) – 2013-02-19 12:26:00

回答

10

您可以使用:eq選擇:

jQuery('#shopping-cart-table > tbody > tr').each(function(index, value) { 
    $('td:eq(2)', this) 
}); 

或者:

jQuery('#shopping-cart-table tbody').find('td:eq(2)'); 
+0

爲什麼這個和foo? – user1856596 2013-02-19 12:27:55

+0

@ user1856596這就是'$(selector,context)','this'是指當前的'tr'。 – undefined 2013-02-19 12:29:31

+0

好的!看起來很有希望。 – user1856596 2013-02-19 12:30:09

2

使用:EQ在jQ中運行uery:http://api.jquery.com/eq/

$('#shopping-cart-table td').eq(2); 
+0

.eq(3)將代表第四個td – Gautam3164 2013-02-19 12:27:16

+0

更正。 P.s,您的解決方案將不適用於早期版本的IE。 – 2013-02-19 12:29:27

+0

jQuery('#shopping-cart-table> tbody td:eq(2)'); IE瀏覽器必須引起衝突,這不是我的....我檢查了 – Gautam3164 2013-02-19 12:30:55

1

嘗試用這種

$("#shopping-cart-table > tbody > tr td").eq(2); 
1

嘗試這樣的:

$(".first td:nth-child(3)").append("<span>-3rd"); 
0

這是最好的和最簡單的代碼。 您可以點擊該行中的按鈕,它會顯示第三個值。 如果你的表:

<tr class="first odd"> 
    <td class="a-center"> 
    <td>...</td> 
    <td>...</td> --> I want this 
    <td>...</td> 
    <td>...</td> 
    <td><button id='test'><button></td> 
</tr> 

然後在JavaScript綁定點擊事件按鈕像如下: -

$(document).ready(function() { 
    $('#test').click(function(){ 
     var thirdData = $(this).closest('tr').children('td:eq(2)').text(); 
     alert(thirdData); 
    }); 
}); 

這將解決這個問題。

0

回答爲標題:

$("#tableId tr td:nth-child(3)").html(); 
相關問題