layui弹窗点击右上角关闭按钮二次确认

在使用layui弹窗时,有时关闭弹窗要进行二次确认,是否要关闭弹窗,但是在右上角关闭按钮回调默认点击之后直接关闭弹窗,并不执行回调里的代码。

而官网给出二次确认代码,使用的是浏览器自带的提示弹窗,与网站风格不一致,于是在网上查了很多,有网友也提出了这个问题,却并没有查到解决办法。

1 cancel: function(index, layero){ 
2   if(confirm('确定要关闭么')){ //只有当点击confirm框的确定时,该层才会关闭
3     layer.close(index)
4   }
5   return false; 
6 }

 

 在项目开发中要使用到该功能,在添加信息过程中点击cancel关闭按钮,要提示用户保存信息,用户点击确认保存执行保存事件,点击取消则关闭弹窗。解决办法:

cancel:function(index,layero){
  if(true){  //条件一直成立,所以会先执行if中代码
     layer.confirm("是否保存信息?", {}, function (index) {  //点击确认执行
         var w = $(layero).find("iframe")[0].contentWindow;
         w.SaveReceive();  //调用子页面保存方法
         
         layer.close(index)
      }, function () {  // 点击取消执行
         layer.close(index)
      })
      return false;
  }
}

 

posted @ 2020-08-17 17:17  敲键盘的喵~  阅读(2940)  评论(0编辑  收藏  举报