使用 window.confirm()

window.confirm() 方法顯示帶有可選訊息的模態對話方塊和兩個按鈕,OK 和 Cancel。

現在,我們來看以下示例:

result = window.confirm(message);

這裡, message 是要在對話方塊中顯示的可選字串, result 是一個布林值,表示是選擇了 OK 還是 Cancel(true 表示 OK)。

window.confirm() 通常用於在執行危險操作之前請求使用者確認,例如在控制面板中刪除某些內容:

if(window.confirm("Are you sure you want to delete this?")) {
    deleteItem(itemId);
}

該程式碼的輸出在瀏覽器中如下所示:

StackOverflow 文件

如果你需要它以供以後使用,你只需將使用者互動的結果儲存在變數中:

var deleteConfirm = window.confirm("Are you sure you want to delete this?");

筆記

  • 該引數是可選的,並且不是規範要求的。
  • 對話方塊是模態視窗 - 它們阻止使用者訪問程式介面的其餘部分,直到對話方塊關閉。因此,你不應過度使用任何建立對話方塊(或模態視窗)的函式。無論如何,有充分的理由避免使用對話方塊進行確認。
  • 從 Chrome 46.0 開始,此方法在 <iframe> 中被阻止,除非其 sandbox 屬性具有值 allow-modal。
  • 通常接受通過刪除視窗符號來呼叫 confirm 方法,因為視窗物件始終是隱式的。但是,建議明確定義視窗物件,因為預期的行為可能會因較低範圍級別的實現而使用類似命名的方法進行更改。