2013-10-08 90 views
0

我已用自定義對話框覆蓋了默認警報框。 但我希望腳本暫停,直到點擊對話框上的取消按鈕。 如何使用javascript或jquery實現它?使用自定義警報框暫停腳本的執行

附::我試圖做一個對話框,它具有與警告框相同的功能。

+2

覆蓋您的自定義對話框,默認的警告框... – Christophe

回答

1

不能使用JavaScript編寫阻塞代碼,因爲它是單線程的運行同一個線程中UI上,在這裏看到:Blocking "wait" function in javascript?

你可以通過回調或事件做的是被解僱時,您的自定義警報盒子被關閉。

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

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

如果我有一個對話框回調將無需等待我點擊取消按鈕執行覆蓋警報。 我希望腳本暫停,直到點擊取消按鈕。 – Sanjeev

+0

是的,您必須在點擊取消按鈕時執行回調。我只是舉了一個例子。 – Gigo

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"); 
        }, 
     } 
}); 

你也可以在設計的temters中自定義你的對話框只需添加class。

一樣,

dialogClass: "MyDialog" 
+0

老闆! 我正在嘗試使對話框與警報類似...即當出現對話框時應該暫停腳本的執行。 – Sanjeev