颖想家

所谓幸福就是你在,我在,你一直在,我一直在

使用layer.confirm后获取不到$(this)取值的解决方法

如果不用确认对话框,直接删除某内容的方法如下:

$('body').on('click', '.js-delete', function() {

    let id = $(this).data('id');

    $(this).parent().parent().remove();

    layer.msg('删除成功!');

});

但如果使用layer.confirm对话框,不仅获取不到上面代码中id的值,也删除不了后面的数据。

要解决这个问题,就必须先声明$(this).parent().parent()

也就是在layer.confirm的上面,先声明一个变量等于$(this).parent().parent()

参考如下代码:

$('body').on('click', '.js-delete', function() {

let id = $(this).data('id');

let del = $(this).parent().parent();

layer.confirm('确认要删除吗?', {title: '删除'}, function () {

del.remove();

layer.msg('删除成功!');

});

});

即可完成当前行的删除。

发表留言