2011-10-04 69 views
0

我试图用this.remove()函数删除<li>项目,但使用我找不到在DOM功能萤火虫:如何从jQuery函数中的'this'对象中删除项目?

jQuery的

$("#list_a, #list_b").sortable({ 
    connectWith: ".connected_sortable", 
    receive: function(event, ui) { 
    $("#list_b li").each(function() { 
     if(ui.item.context.id == this.id) 
     $(this).remove(); //<-----HOW DO I DELETE? (also tried this.remove()) 
});}}}).disableSelection(); 

HTML

<ul id="list_a" class="connected_sortable"> 
    <li id="item_1">test text</li> 
    <li id="item_3">test text</li> 
    <li id="item_4">test text</li> 
</ul> 

<ul id="list_b" class="connected_sortable"> 
    <li id="item_3">test text</li> 
</ul> 

我该如何去删除这里的<li>?因为我想删除其他similiar ID <li>$("#item_3").remove() - 请不要给我一个直接的参考解决方案。

+0

你肯定这样的说法:'ui.item.context.id == this.id'计算结果为真? '.remove(...)'*应该*工作,除非它实际上不会被调用。 –

回答

1

我认为这应该工作。

$('#list_b li[id="'+ ui.item.context.id +'"]').remove(); 

这应该更换你有者均基于循环。每个:

也,你应该使用$(this).attr("id"),而不是this.id假设你的意思是jQuery的元素时y9ou说this,但尝试上述第一我认为。

也看这个问题JQuery. Remove element by attribute name. How?