jQuery选择器选择没有子节点的节点
如何使用类jQuery选择器选择没有子节点的节点,jquery,css-selectors,Jquery,Css Selectors,如何使用类portlet 这不起作用:div.sp\u容器[>div.portlet] <div class='sp_container' style=''> <div class='portlet' style='background:#ff9900;padding:20px;'> <div class='sp_container' > </div> </div> <div class='portlet' s
portlet
这不起作用:div.sp\u容器[>div.portlet]
<div class='sp_container' style=''>
<div class='portlet' style='background:#ff9900;padding:20px;'>
<div class='sp_container' >
</div>
</div>
<div class='portlet' style='background:#ff11aa;padding:20px;'>
<div class='sp_container' >
</div>
</div>
<div class='portlet' style='background:#336699;padding:20px;'>
<div class='sp_container' >
</div>
</div>
这将返回没有任何子元素的所有
sp_容器
元素,我认为您正在寻找这些元素
var myElems = [];
$(".sp_container").each(function() {
if($(this).children() == undefined) {
myElems.push(this);
}
});
根据您的评论,您可以使用
filter()
。这应该行得通
$('.sp_container').filter(function(){
return $(this).children('.portlet').length === 0;
});
如果你想得到答案,请说得更具体一点。你能说得更清楚一点吗?您想选择所有没有父级的
spu容器?是它>我想得到所有元素的类名sp\u容器没有包含一个类名为portlet的元素。仍然没有得到它。。。对不起,我的英语非常糟糕。我想获取所有不包含元素的元素.sp_容器。portlet作为子元素
我需要id为3,5,7的元素,但不需要id为1的元素。ID1包含第一级+1中的child.portlet,这对我很有帮助。我刚刚用find
替换了children
,因为我正在寻找嵌套得更深的子对象:)