在jQuery中使用parent()时,避免删除所有后续div元素

在jQuery中使用parent()时,避免删除所有后续div元素,jquery,Jquery,我尝试过使用最近的()和parent()jquery方法,但它们似乎都删除了我要删除的div之后的所有div。我不希望为每个新div分配一个ID,因为它们是动态生成的 $(文档).ready(函数(){ $(文档)。在('单击','上。添加行',函数(){ 警报(“添加新行方法调用”); $(“.student_mounting”).last().append(“”+ “添加”+ “删除”+ ''); }); $(文档)。在('单击','上。删除行',函数(){ $(this).closest

我尝试过使用最近的()和parent()jquery方法,但它们似乎都删除了我要删除的div之后的所有div。我不希望为每个新div分配一个ID,因为它们是动态生成的

$(文档).ready(函数(){
$(文档)。在('单击','上。添加行',函数(){
警报(“添加新行方法调用”);
$(“.student_mounting”).last().append(“”+
“添加”+
“删除”+
'');
});
$(文档)。在('单击','上。删除行',函数(){
$(this).closest().remove();
});
});
.student\u安装{
位置:相对位置;
顶部:12px;
高度:120px;
宽度:265px;
边界半径:6px;
边缘顶部:120px;
背景色:#F4EBBC;
z指数:4;
边框:2px实心#6B4235;
边界半径:5px;
颜色:黑色;
}

添加
去除

在这里,我添加了另一个id为“studentParent”的父div,并在该父div中添加了所有动态创建的div。这样,当我们使用parent()函数删除该div时,它就会起作用

当您执行此代码时,当我们按下remove按钮时,您可以识别哪个div被删除。
$(文档).ready(函数()
{      
$(文档)。在('单击','上。添加行',函数()
{
警报(“添加新行方法调用”);
var值=$(“#HidVal”).val();
值++;
$(“#HidVal”).val(值);
$(“#学生家长”).last().append(“”+
'添加'+value+''+
“删除”+
'');   
});
$(文档)。在('单击','上。删除行',函数()
{
$(this.parent().remove();
});
});

.学生{
位置:相对位置;
顶部:12px;
高度:120px;
宽度:265px;
边界半径:6px;
边缘顶部:120px;
背景色:#F4EBBC;
z指数:4;
边框:2px实心#6B4235;
边界半径:5px;
颜色:黑色;
} 
加1
去除

如果预期的输出是删除单击“删除”的容器,请选中下面的代码段

代码中的所有内容都很完美,只是没有提到您希望通过
closest()
函数找到什么。所以这里我把最近的div类作为参数传递。希望能有帮助

$(文档).ready(函数(){
$(文档)。在('单击','上。添加行',函数(){
警报(“添加新行方法调用”);
$(“.student_mounting”).last().append(“”+
“添加”+
“删除”+
'');
});
$(文档)。在('单击','上。删除行',函数(){
$(this).最近('.student_mounting').remove();
});
});
.student\u安装{
位置:相对位置;
顶部:12px;
高度:120px;
宽度:265px;
边界半径:6px;
边缘顶部:120px;
背景色:#F4EBBC;
z指数:4;
边框:2px实心#6B4235;
边界半径:5px;
颜色:黑色;
}

添加
去除

这是您预期的输出吗?谢谢,但在选定的div关闭后,这两个选项仍然会删除任何div。有没有办法在不删除所有后续创建的div的情况下删除新创建的div?目前所有后续div都不会被删除。在这种情况下,当前单击的删除按钮所在的div将被删除。无论单击哪个div的remove按钮,都要删除最后添加的div吗?我在JS fiddle上尝试过,如果我添加两个新框,总共创建三个,然后删除中间的一个,最后一个也会被删除。我想知道这是否是因为它将事件绑定到DOM中的div而不是当前div?这是您预期的输出吗?