【发布时间】:2021-11-01 12:38:56
【问题描述】:
我使用sweetalert 在单击按钮之前触发确认框并使用preventDefault。确认后有没有办法删除preventDefault?我试过触发点击,但它一直在打开确认。这是我在下面尝试过的:
function delete_all_product( _e ) {
_e.preventDefault();
Swal.fire({
title: 'Are you sure you want change region to '+$(this).val()+'?',
icon: 'info',
confirmButtonText: 'Yes',
showCancelButton: true,
}).then((result) => {
if (result['isConfirmed']){
po.populate_product_slider();
$('.product-list-item').remove();
$(this).trigger('click');// this is what I've added but it keeps on reopening the swal because it triggers everytime I click.
}
});
}
$('input[name="prod_reg"]').click(po.delete_all_product);
【问题讨论】:
-
也许您可以添加一个参数,例如
delete_all_product( prevent,_e ),然后执行if (prevent) _e.preventDefault();,然后执行$(this).trigger('click', [false])。未经测试但可能有效。$('input[name="prod_reg"]').click(po.delete_all_product);也应该是$('input[name="prod_reg"]').click({prevent:true},po.delete_all_product); -
@CarstenLøvboAndersen 头脑冷静!非常感谢你的逻辑!
标签: jquery sweetalert2