首頁 >web前端 >js教程 >如何防止使用者離開未儲存變更的網頁?

如何防止使用者離開未儲存變更的網頁?

Linda Hamilton
Linda Hamilton原創
2024-11-30 01:17:11867瀏覽

How Can I Prevent Users from Leaving a Web Page with Unsaved Changes?

防止未儲存的變更

修改網頁上的資料時,通常希望阻止使用者在未儲存其內容的情況下離開變化。這可以使用 window.onbeforeunload 事件來實作。

實作

舊版瀏覽器(IE6-8、Firefox 1-3.5)

  1. window.onbeforeunload = function() {
        return "Unsaved changes. Are you sure you want to leave?";
    };
  2. 設定window.onbeforeunload到傳回字串的函數:

    window.onbeforeunload = null;

刪除事件以停用它:

  1. 現代瀏覽器( Chro me、Firefox、等)

    window.onbeforeunload = function() {
        return true;
    };
  2. 啟用提示:

    window.onbeforeunload = null;

禁用提示:

追蹤更改

要確定是否已進行更改,請使用驗證框架或您自己的自訂事件處理程序。
$('input').change(function() {
    if ($(this).val() != "") {
        // Enable the prompt
        window.onbeforeunload = function() {
            return true;
        };
    }
});

jQuery 範例:

  • 瀏覽器特定注意事項
Chr訊息並阻止自訂訊息。 Firefox 僅在表單提交時提示,而不是在 URL 變更時提示。

以上是如何防止使用者離開未儲存變更的網頁?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn