Javascript jQuery删除多个输入,然后只追加一个输入 $('.beta面板输入').fadeOut(函数(){ $(this.remove(); $('.beta panel')。追加('Done'); });

Javascript jQuery删除多个输入,然后只追加一个输入 $('.beta面板输入').fadeOut(函数(){ $(this.remove(); $('.beta panel')。追加('Done'); });,javascript,jquery,Javascript,Jquery,我有上面的代码,当点击一个按钮时,它会淡出,然后在done标记中追加和淡出。问题是,当它淡出并删除输入时,显示的标签数量与输入相同。,而不是: <input type="text" name="val1"/> <input type="text" name="val2"/> $('.beta-panel input').fadeOut(function(){ $(this).remove(); $('.beta-panel').append('<h

我有上面的代码,当点击一个按钮时,它会淡出,然后在
done
标记中追加和淡出。问题是,当它淡出并删除输入时,显示的标签数量与输入相同。

,而不是:

<input type="text" name="val1"/>
<input type="text" name="val2"/>

$('.beta-panel input').fadeOut(function(){
    $(this).remove();
    $('.beta-panel').append('<h1>Done</h1>');
});
$('.beta面板')。追加('Done');
做:

$(this).最近('.beta panel')。追加('Done');

$(此)
保存对所单击元素的引用,并且
。最近的
将找到最接近
$(此)
.beta面板
,然后将其追加。

在这种情况下,您可以使用
.promise()

$(this).closest('.beta-panel').append('<h1>Done</h1>');
$('.beta面板输入').fadeOut(函数(){
$(this.remove();
}).promise().done(函数()){
$('.beta panel')。追加('Done');
});

从文件中:

描述:返回一个承诺对象,当 绑定到集合的特定类型(已排队或未排队)已完成

尝试以下方法:

$('.beta-panel input').fadeOut(function(){
   $(this).remove();
}).promise().done(function(){
   $('.beta-panel').append('<h1>Done</h1>');
});
$('.beta面板输入').fadeOut(函数(){
$(this.remove();
}).parent().append('Done');

您可以发布HTML标记吗?
$('.beta-panel input').fadeOut(function(){
   $(this).remove();
}).promise().done(function(){
   $('.beta-panel').append('<h1>Done</h1>');
});
$('.beta-panel input').fadeOut(function(){
    $(this).remove();

}).parent().append('<h1>Done</h1>');