考虑这段代码:
<table border="1" width="100%" id="list">
<tr>
<th>name</th>
<th>age</th>
<th>city</th>
</tr>
<tr>
<td o="1">aaa</td>
<td o="2">20</td>
<td o="3">zzzzzzzz</td>
</tr>
<tr>
<td o="2">hhhhhhh</td>
<td o="3">55</td>
<td o="1">aaaaaaa</td>
</tr>
<tr>
<td o="3">qqqqq</td>
<td o="1">15</td>
<td o="2">qq</td>
</tr>
</table>
我如何选择包含TD的ROW(TR),其属性(o = 2)出现在列N 中?!
我尝试这个但不起作用:
$("table#list tr").filter(':has(td:eq(0)[o="2"])')...
答案 0 :(得分:0)
试试这个:
function getNthChild(n) {
return $('#list td:eq(' +n + ')[o="2"]').closest('tr');
}
jsfiddle:http://jsfiddle.net/mrchief/Bhtdr/3/
答案 1 :(得分:0)
您可以在单个选择器中执行此操作:
$("table#list tr td:first-child[o=2]")..
使用nth-child
在第二列中选择属性为o="2"
的单元格,例如:
$("table#list tr td:nth-child(2)[o=2]")..
答案 2 :(得分:0)
试试这个
$("table#list tr").filter(function(){
return $(this).find("td:nth-child(1)[o='2']").length > 0;
//nth-child is indexed from 1
});