2010-06-17 84 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