所以我试图找出一种方法来删除程序中动态创建的元素。我现在可以添加一个高于或低于当前模式的模式。
我尝试做的是在两行正方形旁边添加一个删除按钮,然后一旦用户点击该按钮,特定的图案就会被删除,所有其他图案都会移动到正确的位置。 / p>
到目前为止我做了什么:
{{1}}
非常感谢任何帮助或反馈!
答案 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
,然后告诉它删除该父项,类似于上面的代码段。