解决方案可能很明显,但是当点击.remove
元素时,我试图删除作为父元素的整个.tag
元素。目前,单击.remove
元素没有响应。
HTML
'<div class="tag"><input id="' + id + '" type="hidden" name="' + name + '" value="' + value + '" />' + input + '<i class="remove dismiss fa fa-remove"></i></div>'
JS
$('.remove').on('click', '.remove', function() {
$(this).parent().remove();
});
答案 0 :(得分:2)
试试这个:当你动态添加删除链接时,你需要使用.on()
注册click handler。但在您的情况下,使用.on()
时出错。请使用以下代码。
$(document).on('click', '.remove', function() {
$(this).parent().remove();
});
有关 jQuery .on()
的更多信息答案 1 :(得分:2)
你可以试试这个:
$('.remove').on('click', function() {
$(this).parent().remove();
});
答案 2 :(得分:1)
您不应始终将事件委托给已委派的同一元素。您需要选择静态父级。在我的示例中,document
对象是所有内容的父级。
$('body').on('click', '.remove', function() {
$(this).parent().remove();
});
答案 3 :(得分:1)
问题可能是您将事件绑定到.remove,如果此内容是动态的,则可能存在问题。在这些情况下,它更好地绑定到文档。
$(document).on()
回调具有event参数,使用它来删除。
function(e) {
$(e.currentTarget).parent().remove();
}
检查你是否取消了元素。