Sweetalert不等待用户操作并继续进行代码流程

时间:2016-02-25 10:13:28

标签: javascript angularjs sweetalert

swal({title: "Sure ?", text: "Your form will be submitted", confirmButtonText: "Ok",  
showConfirmButton:true, showCancelButton: true, cancelButtonText: "No", type:"warning", closeOnConfirm: false,
                    closeOnCancel: false },
                     function(isConfirm) {
                                if (isConfirm) {
                                    swal({
                                        title: 'Confirm!',
                                        text: 'Successfully Submitted!',
                                        type: 'success'
                                    }, function() {
                                        console.log("Inside Function"); 
                                        $scope.applyleave("ok");


                                    });

                            } else {
swal("Cancelled", "Your application not submitted :)", "error");
                                return false;
                            }
                        });     

代码流只应在单击“确定”时继续,但无需任何用户执行即可执行

我正在将表格从html提交给这个JS但是我想要阻止确认框并等待用户操作并允许以下代码仅在用户按下确定时执行

1 个答案:

答案 0 :(得分:0)

不幸的是,这是javascript事件处理的本质。

要实现正常弹出窗口的效果,请包装仅在用户在函数中响应时需要运行的内容,然后在isConfirm函数中调用它。

正常弹出:

if (confirm("ORLY?")) {
    console.log("YO!");
}
else {
    console.log("AWW!");
}

console.log("KTHXBAI!");

SwaI位:

swal({ title: "ORLY?" },
    function(isConfirm) {
        if (confirm("ORLY?")) {
            console.log("YO!");
        }
        else {
            console.log("AWW!");
        }

        finally();
        // you can also write codes directly here
    });

function finally() {
    console.log("KTHXBAI!");
}