包含NO LI的jQuery选择器UL

时间:2011-09-14 04:40:04

标签: jquery html jquery-selectors html-lists

假设以下HTML如何找到所有不包含任何lis的uls? IE:在这种情况下是ul3和ul4?

我可以看到jQuery有“has”选择器,但我看不到它的反转?我也不明白我是如何结合而不是完成我所需要的。

<div id="div1">
    <ul id='ul1'>
        <li>
        </li>
    </ul>

    <ul id='ul2'>
        <li>
        </li>
    </ul>

    <ul id='ul3'>
    </ul>

    <ul id='ul4'>
    </ul>
</div>

2 个答案:

答案 0 :(得分:2)

  

我也不明白我是如何结合而不是完成我所需要的。

据我所知,它很简单:

$('ul:not(:has(li))')

答案 1 :(得分:1)

使用:empty选择器(如果您确定没有文本节点后代)。

$('ul:empty');

否则你可以使用......

$('ul').filter(function() { return ! $(this).find('li').length; });