我正在尝试删除HTML字段,但删除不适用于动态添加的字段。
$('.delete-ques').on('click', function() {
alert('hello');
$(this).parent().remove();
return false;
});
https://jsfiddle.net/gp2gwana/3/
尝试添加div并删除
答案 0 :(得分:3)
您需要事件委派才能将事件附加到动态添加的元素:
$('#clone-ques').on('click','.delete-ques', function() {
alert('hello');
$(this).parent().remove();
return false;
});
<强> Working Demo 强>
答案 1 :(得分:2)
答案 2 :(得分:1)
在动态添加的元素上使用document.on click事件进行删除:
.on 用于与您的选择器匹配的所有元素的单个处理程序,包括动态创建的元素。
演示:https://jsfiddle.net/7s05cdoy/
$(document).on('click','.delete-ques',function() {
$(this).closest('.parent-question').remove(); // using closest you can get parent of this link
return false;
});
答案 3 :(得分:0)
您可以使用$(doument)
$(document).on('click','.delete-ques', function() {
alert('hello');
$(this).parent().remove();
return false;
});
答案 4 :(得分:0)
代码中的一切都很完美。除了以下行
$('#select-question'+i).selectize({create: true});
通过评论以上代码行来尝试现有代码。
我在控制台中看到错误
Uncaught TypeError: $(...).selectize is not a function
修改强>
在
中返回false之前,你应该在代码行之下$('.delete-ques').on('click', function() {
$(this).parent().remove();
return false;
});
尝试更新jsfiddle