我正在尝试删除一行。但我真的无法弄清楚。 首先,我有一个可以添加新行的按钮,它可以工作。 但我想让用户可以删除刚刚添加的行。 该行内部有一个“div”,充当删除按钮。但是删除按钮不起作用?
我是不是漏掉了什么?
问候,
重机
function addrow() {
$("#container").append("<div id=\"row_added\"><div class=\"deletebutton\" id=\"delbuttonnumber\"></div><div id=\"addedcolor\" class=\"colorcube\"></div></div>");
}
// deleterow the row
$(".deletebutton").click(function() {
rowclrid = "#" + $(this).parent().attr("id");
$(rowclrid).remove();
});
最佳答案
我的猜测是,您在添加新内容之前已经分配了单击处理程序,因此该处理程序不会附加到该特定元素。您可以使用.delegate()
监听特定父元素下所有元素的事件,无论它们是否已经存在:
$('#container').delegate('.deletebutton', 'click', function(){
$(this).parent().remove();
});
它使用名为 event bubbling 的 DOM 功能监听元素 #container
内发生的所有点击事件。 ,然后检查它们是否发生在 .deletebutton
元素上,如果是,则调用处理程序。
另请注意处理程序内的简化代码。
关于javascript - 删除元素 javascript jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4538513/