[英]How to prevent javascript alert on exit when user clicks on submit button
我在表單頁面上安裝了以下js代碼,以警告用戶是否試圖在填寫表單的中間離開頁面:
<script type="text/javascript">
window.onbeforeunload = function (evt) {
var message = 'Data you entered may not be saved';
if (typeof evt == 'undefined') {
evt = window.event;
}
if (evt) {
evt.returnValue = message;
}
return message;
}
</script>
當用戶單擊其他鏈接或選項卡以嘗試離開頁面時,它可以正常工作。 但是,即使用戶單擊“提交”按鈕以提交表單更改,也會彈出JavaScript消息。
提交表單后,如何防止此js消息彈出?
您有兩種選擇。
您可以發布一個全局標志,然后在beforeunload函數中檢查它並采取相應措施。
通過將其設置為空函數或不提示的函數,可以在發布時刪除beforeunload函數。
在表單的onsubmit
,設置一個標志以告知onbeforeunload
它可以忽略此卸載嘗試。
例如:
<form ... onsubmit="window.nounloadcheck = true; return true;">
在onbeforeunload中,您可以執行以下操作:
window.onbeforeunload = function (evt) {
if(window.nounloadcheck == true) return; // ignore
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.