Javascript each()对DOM中删除的元素进行计数
我正在尝试创建订单详细信息,我有一个图(见图):因此这些项目的父容器是Javascript each()对DOM中删除的元素进行计数,javascript,jquery,Javascript,Jquery,我正在尝试创建订单详细信息,我有一个图(见图):因此这些项目的父容器是.co items body inner,它在DOM中被完全删除(当我单击每个.btn取消订单时) 这里的.itemcount类是我的输入字段的选择器,所以我的问题是:为什么当触发.btn cancel order时,它会给我两个2的日志 它应该会在我的控制台中给我1个日志我在这里遗漏了什么?我是否需要重置我的$。如果是这样,每个()函数如何重置?我是新手,所以请容忍我 问题是淡出有延迟,因此您应该在淡出回调中执行以下操作:
.co items body inner
,它在DOM中被完全删除(当我单击每个.btn取消订单时)
这里的.itemcount
类是我的输入字段的选择器,所以我的问题是:为什么当触发.btn cancel order
时,它会给我两个2的日志
它应该会在我的控制台中给我1个日志我在这里遗漏了什么?我是否需要重置我的$。如果是这样,每个()函数如何重置?我是新手,所以请容忍我 问题是淡出有延迟,因此您应该在淡出回调中执行以下操作:
$(document).on('click','.btn-cancel-order',function(){
$(this).closest('.co-items-body-inner').fadeOut("slow", function () {
$(this).closest('.co-items-body-inner').remove();
// Your item was removed
$('.itemcount').each(function(){
$(this).css('outline', '1px solid red');
});
});
// Your item isn't removed yet
$('.itemcount').each(function(){
$(this).css('outline', '1px solid red');
});
});
嘿,不相关,但是你可以用淡出、更少的代码、更干净的:)来链接remove(),所以你在X
按钮的每一个按钮中都有代码?你有两个元素iwth.itemcount类,你在这里选择它们“$('.itemcount')”,这就是为什么你会得到两个日志。我想请提供你的HTMLY?我有$('.itemcount')。每个when$(document)。准备好了,点击事件中的这一个在标题中移动Js代码,不要为每个按钮复制相同的脚本!你不应该删除$(this).nestest('.co items body inner')?它的方式与此相同。@LeonardDrapza:试试这篇文章中的答案,动画回调中的这个
指的是正在设置动画的元素,我想这就是你想要删除的元素。@LoyaltyTechnology你有teamviewer或我们可以远程连接的东西吗?
$(document).on('click','.btn-cancel-order',function(){
$(this).closest('div').parent().fadeOut("slow", function () {
$(this).closest('div').parent().remove();
});
$('.itemcount').each(function(){
console.log($(this).val());
});
});
$(document).on('click','.btn-cancel-order',function(){
$(this).closest('.co-items-body-inner').fadeOut("slow", function () {
$(this).closest('.co-items-body-inner').remove();
// Your item was removed
$('.itemcount').each(function(){
$(this).css('outline', '1px solid red');
});
});
// Your item isn't removed yet
$('.itemcount').each(function(){
$(this).css('outline', '1px solid red');
});
});