使用自定义警报框暂停执行脚本

时间:2013-10-08 03:35:10

标签: javascript jquery jquery-ui

我已使用自定义对话框覆盖默认警报框。 但我希望暂停脚本,直到单击对话框上的取消按钮。 如何使用javascript或jquery实现它?

P.S。:我正在尝试创建一个与警告框功能相同的对话框。

2 个答案:

答案 0 :(得分:1)

您无法在javascript中编写阻止代码,因为它是单线程并且在与UI相同的线程上运行,请参见此处:Blocking "wait" function in javascript?

您可以通过自定义警报框关闭时触发的回调或事件来执行此操作。

function CustomAlert(message, callback)
{
    alert(message);
    callback();
}

function CodeWhichGetsBlocked()
{
    DoSomething();
    CustomAlert("continue?", function() {
        DoSomething();
    });
}

答案 1 :(得分:0)

我将使用动态HTML。

var $divAlert = $("<div>Are you sure going to next step?</div>");

$divAlert.dialog({
                autoOpen: true,
        height: "auto",
        width: "auto",
        modal: true,
        buttons: {
            "OK": function(){
                //Your Code/Logic goes here
            },
                    "Cencel": function(){
                        $(this).dialog("close");
                    },
        }
});

您还可以在设计方面自定义对话框,只需添加类。

dialogClass: "MyDialog"