簡體   English   中英

當用戶單擊“提交”按鈕時如何防止退出時發出JavaScript警報

[英]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消息彈出?

您有兩種選擇。

  1. 您可以發布一個全局標志,然后在beforeunload函數中檢查它並采取相應措施。

  2. 通過將其設置為空函數或不提示的函數,可以在發布時刪除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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM