如何为 SweetAlert 承诺结果添加事件监听器?
How to add an event listener for a SweetAlert promise result?
我有这个警报功能,我想为此添加一个 addListener,这样如果用户单击“确定”,它就会重定向页面。您如何将此设置为警报中的默认确定按钮?
function SuccessDelete() {
swal("Success!", "File successfully deleted.", "success");
}
swal()
方法returns一个Promise。当警报关闭时,它会解析为 结果 (confirmed
)。当按下 "OK" 按钮时,结果将是 true
。如果以任何其他方式关闭,它将是 null
:
function SuccessDelete() {
swal("Success!", "File successfully deleted.", "success").then(function(confirmed) {
if(confirmed) {
console.log("Ok button pressed, redirect here...");
}
});
}
SuccessDelete();
<script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script>
请参阅 documentation
的“使用承诺”部分
您似乎在使用 SweetAlert2,但语法错误(您忘记了 .fire()
部分。
如果您向它传递一个配置对象,那么它会接受一个 onClose
参数,您可以在其中传递一个回调函数。
function successDelete() {
swal.fire({
title: "Success!",
titleText: "File successfully deleted.",
html: "success",
onClose: callback
});
}
function callback() {
document.body.style.background = 'black';
}
successDelete();
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@9"></script>
<div id=html></div>
我有这个警报功能,我想为此添加一个 addListener,这样如果用户单击“确定”,它就会重定向页面。您如何将此设置为警报中的默认确定按钮?
function SuccessDelete() {
swal("Success!", "File successfully deleted.", "success");
}
swal()
方法returns一个Promise。当警报关闭时,它会解析为 结果 (confirmed
)。当按下 "OK" 按钮时,结果将是 true
。如果以任何其他方式关闭,它将是 null
:
function SuccessDelete() {
swal("Success!", "File successfully deleted.", "success").then(function(confirmed) {
if(confirmed) {
console.log("Ok button pressed, redirect here...");
}
});
}
SuccessDelete();
<script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script>
请参阅 documentation
的“使用承诺”部分您似乎在使用 SweetAlert2,但语法错误(您忘记了 .fire()
部分。
如果您向它传递一个配置对象,那么它会接受一个 onClose
参数,您可以在其中传递一个回调函数。
function successDelete() {
swal.fire({
title: "Success!",
titleText: "File successfully deleted.",
html: "success",
onClose: callback
});
}
function callback() {
document.body.style.background = 'black';
}
successDelete();
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@9"></script>
<div id=html></div>