jQuery选择器问题

时间:2009-10-12 12:34:31

标签: jquery html css-selectors

我有点陷入两难境地。我需要根据他们的孩子是否有某个班级来选择div标签。这是DOM结构的代码示例:

<div id="container">

    <div id="one">
         <p>This is item one</p>
         <p class="special">This is a description</p>
    </div>

    <div id="two">
         <p>This is item one</p>
         <p>This is a description</p>
    </div>

    <div id="three">
         <p>This is item one</p>
         <p class="special">This is a description</p>
    </div>

</div>

所以,我想要选择的是一个div标签,它没有一个带有“特殊”类的段落,在上面的例子中,这将是第二个div标签(#two)。

有什么想法吗?

2 个答案:

答案 0 :(得分:14)

您可以使用:not:has selectors

$('div:not(:has(p.special))')

答案 1 :(得分:0)

试试这个:

$("div").filter(function() {
    return $(this).children("p.special").length == 0;
})