Javascript 如何记录具有该id的项目已删除?
我将其记录为刚刚“删除”,我不知道如何使其特定于每个id。 这是我的HTML: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> &
<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);
});
}
});