当我们使用这种方式去添加事件时,如果我们在动态生成一些元素,就会发现这个事件不生效了,需要我们重新添加一次。
$('#classification-add').on('click', function () {
layer.prompt({
formType: 0,
value: '',
title: '请输入一级分类名字',
// area: ['800px', '350px'] //自定义文本域宽高
}, function (value, index, elem) {
var param = {
type_name: value + '',
};
var data = {
c: "Integral",
a: "addActivityTypeOne",
param: JSON.stringify(param)
}
classificationAdd(data);
layer.close(index);
});
})
解决方法
//对动态添加的元素添加事件-删除
$(".info").on("click",".delete",function(){
console.log("进来了Delete!");
$(this).remove();
});
$(” “) 这里写动态生成的元素的父元素。
然后 on(“click”,”.delete”,function() ….. 这里第二个参数写你动态生成的元素的类名会id就可以了
这样我们就不需要在重新绑定一次事件