jQuery隐藏没有某个类的行
问题描述:
我有以下psudeo html。我需要写一些jquery,它隐藏任何不包含具有特定类'FacetItemsActive'的锚标记的表的行。jQuery隐藏没有某个类的行
<table >
<tr>
<td>
<table>
<tr>
<td><a class='FacetItemsActive'/></td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
normal content
</td>
</tr>
<tr>
<td>
normal content
</td>
</tr>
</table>
我有这个功能是接近,但不是那里。可以任何你jquery大师帮助我吗?
function eiaHideNonSelectedFacets(){
// find the parent facet table
// find children tr of that table, and hide any rows that do not contain the class 'FacetItemsActive'
$('.FacetItemsActive').closest('table[facet]').find('tr').each(function(){
if (! $(this).is('.FacetItemsActive')){
$(this).hide();
}
});
}
答
$("tr:not(:has('.FacetItemsActive'))").hide();
+0
谢谢,这个作品很棒!很优雅! – BrokeMyLegBiking 2010-12-17 23:22:43
嵌套表几乎总是一个标志,你正在使用表布局,这[你应该避免](http://phrogz.net/CSS/WhyTablesAreBadForLayout.html)。 – Phrogz 2010-12-17 20:25:08
是的,我没有创建HTML,我只需要使用它。 :( – BrokeMyLegBiking 2010-12-17 20:35:03