我使用sweetalert來要求用戶輸入以重命名標籤。然後我做一個ajax調用來改變服務器上的標籤。如果成功,我會調用一個小的回調函數(postAction),它將更新UI並在UI上重命名標記。只要小回調函數有一個聲明「swal(」done!「);」,所以用戶點擊這個小小的確認消息框,並釋放sweetalert消息框,它就可以正常工作。我試圖看看是否有一個函數可以調用,以釋放沒有額外的「swal(」done「)」語句的彈出輸入sweetalert,因此用戶將減少1次點擊。是否有捷徑可尋? 現在我所能找到的就是在第二個彈出窗口中添加一個計時器。 swal(「完成!」,{timer:500});沒關係,但並不理想。在ajax調用後明確釋放sweetalert彈出窗口
renameTag = function(tagId)
{
swal({
title: "Rename Gallery Tag",
text: 'Please provide a new tag name',
content: "input",
button: {
text: "OK",
closeModal: false,
},
})
.then(name => {
var tagName = name.trim();
if (tagName.length == 0)
{
swal({
title: "Rename Gallery Tag Failed",
text: "Tag name cannot be empty",
icon: "error",
button: "OK",
});
return;
}
else
{
ajaxAction("POST"
, "/User/RenameGalleryTag"
, { 'index': tagId, 'name': tagName }
, "rename gallery tag"
, {
'reload': false
, postAction: function() {
$(".selected-tag").text(tagName);
swal("done!");
}
});
}
})
}
也許你可以使用'showConfirmButton:FALSE'並沒有顯示該按鈕確認或在阿賈克斯成功函數調用,您可以關閉警告'swal.close()' – kip