我有一个javascript函数,可将元素追加到HTML页面中。我想添加一个函数,当用户单击HTML中的按钮时,它将从页面中删除关联的HTML内容。

$("#keywords").append("<td><img src=\"images/delete.png\" class=\"delete_filter\" /> " + id + "</td>");


上面的代码是我向HTML添加元素的方式。因此,在这种情况下,当用户单击附加的图像<td><img src=\"images/delete.png\" class=\"delete_filter\" />
 将从HTML中删除。

这是我现在无法正常工作的内容:

$(".delete_filter").click(
function(){
    ($(this).parent()).remove();
});

最佳答案

由于元素是动态添加的,因此click()无效,因为它只能看到加载时可用的元素。

尝试以下方法:

$("#myTable").delegate(".delete_filter", "click", function() {
    $(this).parent().remove();
})


或在jQuery 1.7+中

$("#myTable").on("click", ".delete_filter", function() {
    $(this).parent().remove();
})

10-05 20:38
查看更多