2015-06-25 62 views
1

我有动态UL李节点,使树,我想删除它有删除所有子节点与specfic类

class="highlight" or 
class="add_action" or 
class="delete_action" or 
class="edit_action" 

下与specfic ID specfic里所有子跨度节点 - (在本例中20) - 我想这代码与jQuery找到与论文类的所有跨删除它,但它并没有工作

$('li#20').find('span.add_action').each(function(){ 
    $(this).remove(); 
}); 

还累

$('li#20').eq(0).find('.add_action').remove(); 

    $('li#20').children('.add_action').remove(); 

此完整示例

https://jsfiddle.net/kqagjtmr/

+1

您尚未在该小提琴中加载jQuery。 – undefined

回答

2

你在你的代码的重复id属性,例如:

<li class="thide" id="20"><span class="vertical"></span> 

<span id="20" class="first_name" title="">الجد سعد</span> 

这就是为什么$('li#20')不能正常工作。 id属性必须是唯一的,并且不应以数字开头。改用类。

remove元素,只需使用:

$('someSelector').remove(); 

此外,你应该包括jQuery的在你的小提琴,你可以在这里找到的选项:

enter image description here

+0

你真棒+1为你的男人:)。我知道我不是OP,但我喜欢你的答案:P – squiroid

+1

@squiroid:谢谢,非常感谢。 – Cerbrus

2

获取具有指定类的所有span元件和删除所有这些的。不需要使用each来循环。使用逗号分隔的span元素选择所有匹配的元素。

$('li#20') 
    .find('span.highlight, span.add_action, span.delete_action, span.edit_action') 
    .remove(); 

DEMO

1

请参阅更新的小提琴“ https://jsfiddle.net/kqagjtmr/1/

使用$('li#20').find("highlight add_action delete_action edit_action").remove();

一次查找多个元素并将其删除。

+0

为什么upvote,当这不起作用 – Tushar