2011-09-16 58 views
2

现在我正在使用jQuery内联脚本,我想要做的是添加删除选项,如果删除,它将淡出并从DOM中删除。现在,这根本就没有连接到数据库,我使用VIN解码器,所以这些都是它的默认功能。jQuery使用jQuery删除列表项,淡出 - 从DOM中删除

我下面提供的代码当然会删除每一个列表项。我只想删除我点击“删除”的列表项。我不知道如何完成这一任务,因为没有独特的课程或任何东西。

enter image description here

jQuery代码:

// plugin defaults 
$.inlineEdit.defaults = { 
    hover: 'ui-state-hover', 
    value: '', 
    save: '', 
    buttons: '<button class="save">save</button> <button class="cancel">cancel</button> <a href="#" class="delete">delete</a>', 
    placeholder: 'Click to edit', 
    control: 'input', 
    cancelOnBlur: false, 
    saveOnBlur: false 
}; 

.find('a.delete') 
      .bind('click', function(event) { 

       $("li.editable").fadeOut(300, function() { 
        $(this).remove(); 
       }); 

       return false; 
      }) 
     .end() 
+0

你可以发布生成的'html',这样我们就可以更好地了解它的结构吗? – Jack

+0

尽管下面的答案是正确的,但我猜你没有提供完整的代码'.find('a.delete')'可能会生成一个对象未​​找到错误 – vol7ron

回答

4

只需更换$("li.editable")$(this).closest("li.editable"),你应该罚款。

+0

完美。非常感谢。 – Drew

+0

是的。甚至不需要'.editable',一个简单的'$(this).closest('li')'将起作用 – vol7ron

+0

quick question。生成的列表具有偶数和奇数行类,当然具有不同的颜色。当我在中间删除一个,现在我将拥有两个相同的颜色。有没有办法解决这个问题?如果需要,我可以发布更多代码。 – Drew