防止 SweetAlert 在点击弹出窗口外部时关闭

51

我在电子商务应用程序的产品视图中使用Sweet Alert作为弹出窗口,其中包含两个按钮:一个用于进入购物车视图,另一个用于重新加载视图。

但是当用户在弹出窗口外单击时,弹出窗口会自动关闭。 我尝试了以下属性来阻止它被关闭,但是没有任何效果:


hideOnOverlayClick: false,
hideOnContentClick: false,
closeClick: false,
helpers: {
    overlay: { closeClick: false } 
}
任何帮助/建议都非常感激。谢谢。

在“窗口关闭事件”中,您可以检查目标事件。 - manikant gautam
13个回答

1

针对sweetalert版本<2

swal(
         "Records will be deleted permanently.",  //title
         "Do you want to delete records?",  //text
         "warning",  //icon
         {
              closeOnClickOutside: false, // prevent close on click anywhere/outside
              buttons: ["No", "Yes"], //with custom label
              dangerMode: true,
         }
    ).then(ok => {
         if (ok) {
              console.log("deleted")
         }
         else {
              console.log("not deleted")
         }
    })

1

最新版本为

allowOutsideClick: false

0

如果你想在按下Esc键或点击外部区域时关闭对话框,以下代码适用于我。

swal({
  title: "Are you sure?",
  text: "You will not be able to recover this details!",
  icon: "warning",
  closeOnClickOutside: false,
  closeOnEsc: false,
  allowOutsideClick: false,
  buttons: [
    'No, cancel it!',
    'Yes, I am sure!'
  ],
  dangerMode: true,
})

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接