Javascript 如何记录具有该id的项目已删除?

Javascript 如何记录具有该id的项目已删除?,javascript,jquery,Javascript,Jquery,我将其记录为刚刚“删除”,我不知道如何使其特定于每个id。 这是我的HTML: <ul> <li id="apple"> <label><input type="radio" name="list" value="apple">Apple</label> <button class='remove'>delete</button> </li> &

我将其记录为刚刚“删除”,我不知道如何使其特定于每个id。 这是我的HTML:

<ul>
    <li id="apple">
        <label><input type="radio" name="list" value="apple">Apple</label>
        <button class='remove'>delete</button>
    </li>
    <li id="Orange">
        <label><input type="radio" name="list" value="orange">Orange</label>
        <button class='remove'>delete</button>
    </li>
    <li id="pear">
        <label><input type="radio" name="list" value="pear">Pear</label>
        <button class='remove'>delete</button>
    </li>
    <li id="banana">
        <label><input type="radio" name="list" value="banana">Banana</label>
        <button class='remove'>delete</button>
    </li>
</ul>
另外,我希望函数按以下顺序执行; 1.用户单击“删除” 2.确认他们是肯定的 3.淡出和删除
4.删除后,记录具有该“id”的项目是否已删除

删除前只需获取父项的id即可

$("ul").on("click", "button", function() {
    alert('Are you sure you want to remove?'); 
    $(this).fadeOut(400, function(){
        var itemID= $(this).parent().attr('id');
        $(this).parent().remove();
        console.log(itemID + " removed");
    }); 
});

您可以在删除之前获取id。试试这个:

 var id = $(this).parent().attr('id');
 $(this).parent().remove();
 console.log('removed ['+id+']');

作为旁注,
警报
不是一个确认对话框,只是一个信息弹出窗口。您可能应该使用
if(确认('您确定要删除吗?')
步骤1:确认用户要删除它

var confirmed = confirm("Are you sure you want to delete this item?");
if(confirmed){ //..if true
    //.. continue
}
步骤2:淡出、记录ID并删除

var item = $(this).closest('li'); //get the LI element
var id = item.attr("id");
item.fadeOut("slow", function(){
    //when fade out finishes continue
    item.remove(); //delete the element
    console.log(item.attr('id')); 
});
例如,整个代码可能如下所示

$('.remove').click(function(){

    var confirmed = confirm("Are you sure you want to delete this item?");
    if(confirmed){
        var item = $(this).closest('li');
        var id = item.attr('id');
        item.fadeOut("slow", function(){                
            item.remove();
            console.log("Removed item with ID: " + id);
        });
    }
});

当用户单击“删除”时,我应该确认,然后淡出,然后删除。这就是我发出警报的原因。你建议另一种方法吗?好的,谢谢你,但我想在删除后获得家长的id。我希望它的顺序是这样的——1.用户单击删除2。确认他们确定3。淡出,然后删除4。删除日志后,该项被删除。包含更多代码,以显示父项的id在删除之前已保存,日志在删除之后发生。有任何答案可以解决您的问题吗?如果是,请选择正确答案。
$('.remove').click(function(){

    var confirmed = confirm("Are you sure you want to delete this item?");
    if(confirmed){
        var item = $(this).closest('li');
        var id = item.attr('id');
        item.fadeOut("slow", function(){                
            item.remove();
            console.log("Removed item with ID: " + id);
        });
    }
});