获取不包含具有属性值的子项的父项

时间:2014-10-26 11:05:11

标签: jquery

我有N DIV's。每个代表一台物理计算机。每个DIV可以具有N个UL元素。每个UL代表安装在服务器上的软件类型。最后,每个UL元素包含表示与软件(UL)相关的数据的N LI元素。

我想选择一个不包含带有某些数据的LI元素的服务器(数据在LI元素上表示为data-id属性)

我创建了一个fiddle来处理它并使用.not()(javascript窗口中的第3行):

但它总是返回两个服务器,无论提供什么输入

$('.srv').not('li[data-id="2"]').each(function(){
    servers += $(this).attr('id') + ', ';
});

1 个答案:

答案 0 :(得分:3)

使用:

 $(".srv:not(:has(li[data-id=2]))")

<强> Working Demo