Я пытаюсь внедрить библиотеку javascript Sweet Alert в свое приложение.
Вот соответствующий код:
<xp:link escape="true" text="" id="link2" style="color:#4A4A4A">
<i class="fa fa-trash-o fa-lg">
</i>
<xp:eventHandler event="onclick"
submit="true" refreshMode="partial" refreshId="assetList">
<xp:this.action><![CDATA[#{javascript:
var db:NotesDatabase = session.getDatabase(sessionScope.serverPath,sessionScope.dbName);
var id = viewRow.getUniversalID();
var doc:NotesDocument = db.getDocumentByUNID(id);
doc.remove(true);}]]></xp:this.action>
<xp:this.script><![CDATA[swal({
title: "Are you sure?",
text: "This asset will be permanently deleted",
type: "warning",
showCancelButton: true,
confirmButtonColor: "#2196f3",
confirmButtonText: "Ok",
cancelButtonColor: "#607D8B",
cancelButtonText: "Cancel",
closeOnConfirm: true,
closeOnCancel: true,
confirmButtonClass: 'confirm-class',
cancelButtonClass: 'cancel-class'
},
function(isConfirm){
if (isConfirm) {
return true;
} else {
return false;
}
});
//if(window.confirm("Are you sure you want to delete the asset?") != true)
return false;]]></xp:this.script>
</xp:eventHandler>
</xp:link>
Щелчок по ссылке удаляет строку независимо от сделанного выбора (Отмена/ОК). Я вижу, как происходит удаление, даже до того, как сделаю свой выбор. У меня такое ощущение, что это как-то связано с порядком выполнения обратного вызова.
Если я использую код, закомментированный в конце (window.confirm), он работает отлично.
Я был бы признателен за ваше руководство по этому поводу.
Спасибо,
Дэн