如果<li>为空</li>,则隐藏父DIV

时间:2012-12-11 21:58:07

标签: jquery

我知道这必须非常简单,但我一直在撞墙。我的HTML是:

<div class="awardsparent">
<h4>AWARDS</h4>
<ul class="awards"><li></li></ul>
</div>

如果ul.awards li为空,我正在尝试隐藏容器div.awardsparent。这是我的jQuery代码:

$(function() {          
  if($('ul.awards li:empty')) {
  $('div.awardsparent').hide();
    }
});

谢谢!如果您需要更多信息,请与我们联系。

3 个答案:

答案 0 :(得分:3)

尝试:

if ($('ul.awards li').is(':empty')) {
    $('div.awardsparent').hide();
}​

<强> jsFiddle example

答案 1 :(得分:3)

从技术上讲,你可能甚至不需要if测试,只需让jQuery的空选择器发挥魔力。

这一个班轮应该这样做。

$("ul.awards li:empty").closest('div.awardsparent').hide()

编辑,而空选择器我的意思是,如果$("ul.awards li:empty")返回某些内容,则会隐藏父级,但如果选择为空,则会默默忽略closest()因为没有什么可以应用它。

答案 2 :(得分:1)

尝试使用.length,如:

if ($("ul.awards li:empty").length)