因此,我想在按OK后更改现有警报上的文本。单击任何按钮后,模式将关闭。不必抛出新的警报,我们可以防止模式关闭并更改现有文本吗?我们可以使用PreConfirm吗? 预先感谢。
答案 0 :(得分:1)
很难看到您的代码,但是您始终可以将自己的警报框版本实现为模式并替换其中的字符串。您还可以检查SweetAlerts github问题(我想您是在搜索“ PreConfirm javascript”之后尝试使用它的)。你看过这个话题吗? SweetAlert github issue
答案 1 :(得分:0)
所以我能够找到一种方法。我使用setTimeout将模式关闭延迟了几秒钟,然后直接使用其ID修改其内容。如果还有其他方法可以做到,请告诉我。谢谢。
swal({
title: "title",
text: "text goes here.",
closeOnEsc: false,
closeModal: false,
preConfirm: () => {
return new Promise((resolve) => {
$("#swal2-title").text("New title")
$("#swal2-content").text("new text")
setTimeout(() => {
console.log("Doing async operation");
resolve()
}, 5000)
})
},
allowOutsideClick: () => !swal.isLoading()
}).then( isConfirm => {
//code for after a confirmation
});