2010-06-17 86 views
0

我有一個表,看起來有些事情是這樣的:如何在具有複選框的行中選擇「td」元素?

<table> 
    <tr class="row even"> 
    <td><input type="checkbox" /></td> 
    <td class="name">foo</td> 
    <td class="metric">22</td> 
    </tr> 

    ...etc 

我想要做的就是隻在有複選框選中行獲得所有td.metric的數組。

var ticks = $.map($("tr td input:checked td.metric"), function(v,i){ return ... }); 
+0

您是否嘗試刪除所有符除了td.metric如預期這沒有奏效? – 2010-06-17 21:37:51

+0

是的,但獲取所有行,無論複選框選中狀態 – 2010-06-17 21:38:23

回答

3

使用:has選擇:

$('tr:has(input:checked) > .metric'); 

http://jsfiddle.net/RqjFX/

+0

現在,這就是我所說的性感:)(我知道我知道,我很難過) – 2010-06-17 21:49:46

+1

完美!謝謝 – 2010-06-17 21:53:02