在DOM准备好后删除元素

red*_*gem 0 javascript jquery dom

我有一些用户可以填写的字段(例如,姓名,号码,地址),然后他们可以点击"添加",创建一个div,显示他们刚输入的信息,并带有"删除"按钮(href)每个条目.我遇到的问题是,一旦DOM准备就绪,删除按钮就不起作用了.我已经硬编码删除按钮,删除第3个div(第3个是任意的),这是有效的,但不是在页面加载后生成的.我的问题是如何在DOM准备好后让删除按钮工作?

这是remove函数(传入id,所以它知道要删除哪个div):

function remove(id) {
    $("div.reviewSub"+id).remove();
}
Run Code Online (Sandbox Code Playgroud)

这是调用函数的处理程序:

$(".remove").click(function(event) {remove(event.target.id);});
Run Code Online (Sandbox Code Playgroud)

检索数据后显示数据的方式是.append():

$(".reviewSub"+num).append("<a href=\"#\" class=\"remove\" id=\"" + num + "\">Remove</a>");
Run Code Online (Sandbox Code Playgroud)

Tim*_*mes 6

您可以live在jQuery中使用该方法.

$('.remove').live('click', function(event){
    remove(event.target.id); 
});
Run Code Online (Sandbox Code Playgroud)

我怀疑$(".remove").click(function(event) {remove(event.target.id);});你在附加DOM之前有代码.因此,jQuery无法将click事件绑定到元素,因为元素尚不存在.

更多文档http://api.jquery.com/live/