jquery - 从类中删除一个 li 项

标签 jquery

我有一个表格,当单击图标时,我试图删除其中的列表项。

enter image description here

因此,当我单击垃圾桶图标,并且单击垃圾桶图标时,我想删除该列表项,并将其他项“向上”移动。

<div class="container">
    <div class="list">TO-DO LIST<div class="glyphicon glyphicon-plus"></div></div>
    <ul class="toDoList" style="list-style: none;">
        <li id="addToDo"><input type='text' id="addToDoText" placeholder="Add New ToDo"></input></li>
        <li><span><i class="fa fa-trash"></i></span>Buy Robes</li>
        <li><span><i class="fa fa-trash"></i></span>Fight Malfoy</li>
        <li><span><i class="fa fa-trash"></i></span>Buy New Wand</li>
        <li><span><i class="fa fa-trash"></i></span>Kill Voldemort</li>
        <li><span><i class="fa fa-trash"></i></span>Feed Hedwig</li>
        <li><span><i class="fa fa-trash"></i></span>Send Owl to Sirius</li>
        <li><span><i class="fa fa-trash"></i></span>Do Dishes</li>
        <li><span><i class="fa fa-trash"></i></span>Wash Robes</li>
        <li><span><i class="fa fa-trash"></i></span>Buy Hagrid's Birthday Gift</li>
    </ul>
</div>

和我的 jQuery,其中包括用于为表格替代颜色着色的代码,我希望在删除项目时保留该代码。

$(document).ready(function(){
  color_table();
});

function color_table(){
    $('.toDoList li:nth-child(odd)').addClass('alternate');
};

$('li .fa-trash').on("click", function(){
    var index = $(this).index(); // ...doesn't do anything. b/c no index of the class?
    var text = $('li').text(); // gets LI text correctly of current item
    console.log(index+" // "+text);
    $(this).remove(); // This should remove the LI entry, not just the icon class .fa-trash. If I use $('li').remove(), it removes the entire li list! Not just the current one.
    color_table();
})

最佳答案

您应该使用closest()获取祖先li的方法。

$(this).closest('li').remove();

关于jquery - 从类中删除一个 li 项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47621935/

相关文章:

jquery - Zombie.js browser.fire 无法与 Backbone.Events 一起使用

javascript - 是否有更标准的方法来处理 "this"而不使 "that"引用 "this"

javascript - 在jqgrid中添加行

javascript - 在基本目标语句中排除 tel 和 mailto

javascript - 在哪里记住 onSelect 所需的值

jquery - 在 Ajax Post 之后通过 jQuery 刷新 PartialView

jquery - 单击时更改 Accordion 箭头方向

javascript - 所有键的键码值均返回为 229

javascript - 用 jQuery : can't parse data 休息通话

jQuery的动态添加/删除行功能,它的clone()对象不能修改元素名称