解决layui动态追加的点击事件不起作用问题

91 阅读1分钟
//不起作用
$('#demo').on('click', function() {
	layer.msg('响应点击事件');
});

//起作用
$(document).on('click', '#demo', function() {
  layer.msg('响应点击事件');
});

//不起作用
$(".upload").on('change', function () {
   layer.msg('响应文件上传事件');
});
//起作用
$(document).on('change', '.upload', function () {
   layer.msg('响应文件上传事件');
});

>> .click只能为页面现有的元素绑定点击事件,如果是动态生成的新的元素,是没有事件的

>> 而$(document).on("click","指定的元素",function(){});方法则是将指定的事件绑定在document上,而新产生的元素如果符合指定的元素,那就触发此事件