我有一张看起来像这样的表:
<table>
<tr>
<td> </td>
</tr>
</table>
我如何以这样的方式构建jQuery选择器,以便查找包含
的单元格的表并将表设置为display: none;
请帮忙吗?
答案 0 :(得分:4)
$('table').each(function ()
{
var $table = $(this),
numTRs = $table.find('tr').length,
$tds = $table.find('td'),
numTDs = $tds.length;
if (numTRs === 1 && numTDs === 1 && $tds.html() === ' ')
{
$table.hide();
}
});
答案 1 :(得分:0)
这将根据规范工作,仍然是纯粹的Jquery:
$('table tr:only-child td:only-child').filter(function () {
return $(this).html() === ' ';}).closest("table").hide();
困扰我的是桌子上的特殊角色。否则会更简单。
<table>
<tr>
<td>nbsp</td>
</tr>
</table>
<script type="text/javascript">
$('table tr:only-child td:only-child:contains("nbsp")').closest("table").hide();
</script>
答案 2 :(得分:0)
$('table').each(function() {
var $this = $(this);
var trCount = $this.find('tr').length;
var tdCount = $this.find('td').length;
if (trCount == 1 && tdCount == 1) {
var tdContents = $this.find('td:first').html();
if (tdContents == ' ') {
setTimeout(function() {
$this.hide();
}, 2000);
}
}
});