使用jQuery删除单击的附加项

时间:2017-06-21 11:38:31

标签: jquery

我的+按钮复制元素, - 按钮删除最后添加的元素。

$('#btnNewMobilePhone').on('click', function(e){
            e.preventDefault();
            $('.phonemobile').append(' <div class="form-group"><label for="email" class="col-sm-3 control-label">Cep Telefonu</label><div class="col-sm-4"><input type="text" class="form-control" name="phone_mobile[]"  placeholder="Mobile Phone"></div><div class="col-sm-2"> <a href="#"  class="btn btn-primary btnRemMobilePhone"> <i class="entypo-plus"> -</i> </a> </div></div>');
});
$('.phonemobile').on('click', '.btnRemMobilePhone', function(e){
            e.preventDefault();
            $('.phonemobile .form-group:last').remove();
});

此代码删除最后添加的元素。但我想删除最后一个元素的点击元素。可能吗?我找不到解决方案。

有没有办法使用像

这样的东西
.form-group:this

2 个答案:

答案 0 :(得分:1)

您可以使用clicked元素的上下文(this)遍历最近的父form-group元素,然后将其删除:

$('.phonemobile').on('click', '.btnRemMobilePhone', function(e){
   e.preventDefault();
   $(this).closest('.form-group').remove();
});

答案 1 :(得分:0)

要删除最后点击的元素,您应该使用:

$('.phonemobile .form-group').find(e.currentTarget).remove();

e.currentTarget将为您在表单组中单击并删除它们的元素。如果您只想删除点击的元素和表单组外的元素,则应使用$(e.currentTarget).remove();