如何在javascript / jquery中删除动态创建的元素?

时间:2016-09-28 16:37:51

标签: javascript jquery html css

所以我试图找出一种方法来删除程序中动态创建的元素。我现在可以添加一个高于或低于当前模式的模式。

我尝试做的是在两行正方形旁边添加一个删除按钮,然后一旦用户点击该按钮,特定的图案就会被删除,所有其他图案都会移动到正确的位置。 / p>

到目前为止我做了什么:

{{1}}

非常感谢任何帮助或反馈!

2 个答案:

答案 0 :(得分:4)

您可以在容器中添加删除按钮并使用它来删除。 可以轻松地将按钮移动到您想要的位置。

http://codepen.io/anon/pen/QKgBzP

var id_num = 1;
var picker = null;
$(function () {
$(document).on('click', ".repeat", function (e) {
    e.preventDefault();
    var $self = $(this);
    var $parent = $self.parent();
    var newobj=$parent.clone(true).attr("id", "repeatable" + id_num);
    if($self.hasClass("add-bottom")){
      $parent.after(newobj);
      id_num = id_num + 1;
      //picker = null;

    } else {
      $parent.before(newobj);
      id_num = id_num + 1;
      //picker = null;
    }
    newobj.append("<button class=\"remove\"> Remove</remove>");
});   
$(document).on('click', ".remove", function (e) {
    $(this).parent().remove();
});
});

答案 1 :(得分:1)

您可以查看按钮的父级并强行删除:

var elem = document.getElementById("yourid");
    elem.parentElement.removeChild(elem);

在创建另一个repeatableX时,您还将为我假设的容器创建一个按钮。

在该按钮上单击,您将查看该按钮的父ID,在您的情况下,repeatableX,然后告诉它删除该父项,类似于上面的代码段。