2012-03-22 61 views

回答

1

如果我理解正确的话,你想删除包含li s的属性isClickedul S = "True"

$myParent.find("li[isClicked=True]").parent("ul").remove(); 

请注意,属性必须包含单词"True";它是一个字符串,而不是布尔值。

Live example

从下面的评论:

我找反之亦然实际。删除所有没有自定义属性的ul。

那是你的问题的开头一句的相反(“我只想删除与李有一个自定义属性上的UL”)。 :-)假设ul元素是$myParent的直接子元素(您的示例代码暗示了这一点),您可以这样做:如果这不是真的,只是在第一行改变.children.find

$myParent.children("ul").each(function() { 
    var $ul = $(this); 
    if (!$ul.find("li[isClicked=True]")[0]) { 
    // Doesn't have one, remove it 
    $ul.remove(); 
    } 
}); 

Live example


FWIW,该属性名称不会validate。您可以考虑切换到data-* attribute form

+0

我正在寻找反之亦然。删除所有没有自定义属性的ul。 – ankur 2012-03-22 11:21:11

+0

@ankur:这与你问题的开头句子相反。 – 2012-03-22 11:21:50

+0

我会更新第一行,抱歉。 – ankur 2012-03-22 11:24:02

相关问题