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

Saq*_*har 17 javascript sweetalert

我正在使用"Sweet Alert"在我的产品视图中弹出一个带有两个按钮的电子商务应用程序中的弹出窗口; 一个用于进入购物车视图,另一个用于重新加载视图.

但是当用户在弹出窗口外单击时,弹出窗口会自动关闭.我试过跟随属性来阻止它被关闭但没有任何效果

  • __CODE__
  • __CODE__

  • __CODE__

  • __CODE__

任何帮助/建议都非常感谢.谢谢.

小智 32

您可以使用此配置

allowOutsideClick: false
Run Code Online (Sandbox Code Playgroud)

这应该工作.

  • 检查 Swal 版本。对于 SweetAlert 2,allowOutsideClick: false;对于版本 1,closeOnClickOutside: false (3认同)
  • @Channel 如果您使用的是甜蜜警报 2,这确实有效 (2认同)

Cha*_*nel 18

您正在寻找的房产是closeOnClickOutside:

closeOnClickOutside: false
Run Code Online (Sandbox Code Playgroud)


Pho*_*elf 15

关于 Sweet Alert 2(更有效的解决方案)

实际上,这里的所有答案都没有涵盖另一种关闭弹出窗口的方法。那是使用键盘。尤其是ESC键。为了防止这种情况,您需要添加两个选项而不是一个。

allowOutsideClick: false,
allowEscapeKey: false,
Run Code Online (Sandbox Code Playgroud)

快速示例:

Swal.fire({
  title: 'Do not dismiss!',
  icon: 'warning',
  showConfirmButton: false,
  allowOutsideClick: false,
  allowEscapeKey: false
})
Run Code Online (Sandbox Code Playgroud)
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@9"></script>
Run Code Online (Sandbox Code Playgroud)


Sou*_*rii 12

对于SweetAlert 2:

allowOutsideClick: false
Run Code Online (Sandbox Code Playgroud)

版本3一些低于2版本

closeOnClickOutside: false
Run Code Online (Sandbox Code Playgroud)


gih*_*nka 5

backdrop:trueallowOutsideClick: false以下内容一起使用。这对我有用。

swal({
    backdrop:true,
    allowOutsideClick: false,
    title:'Warning!',
    text:'Do you want to delete records?',
    type:'warning',
    showCancelButton: 0,
    confirmButtonText: 'OK',
}).then(function(e) {
    if (e.value) {
        //do what you want
    }
})
Run Code Online (Sandbox Code Playgroud)


Vin*_*ani 3

您可以设置该属性:

allowOutsideClick: true
Run Code Online (Sandbox Code Playgroud)