点击一个控件新增一些控件,其中有个删除控件,希望点击删除控件然后删除新增的控件,但是设置的点击事件没有触发,
动态新增控件:
$('#add-record').on('click', function () {
$('.detail-items').append('<div class="weui-flex js-category">' +
' <div> '+
' <p>最终买家</p>' +
' <div>'+
' <input type="text" name="cusno-last" value=" " placeholder="请选择" />'+
' </div>' +
' </div>' +
' <div class="delete-item">删除</div>' +
'</div>');
});
类delete-item绑定的点击事件:
$('.delete-item').on('click', function () {
$.alert('提示','错误');
});
点击"删除"后没有反应!
这个问题的关键原因在于:动态生成的元素要通过事件委托来处理。
我们通过事件委托来解决问题:
$(document).on("click", ".delete-item", function (e) {
$.alert('hhhh', "错误");
});
这个方法参考了博友的解决方法:https://www.cnblogs.com/nelly0213/p/6183661.html