私は自分のページにbeforeunloadイベントを使用しているので、ユーザーが自分のWebサイト/タブを閉じようとしたときにフォームをすべて消さないといっぱい。しかし、問題は、私のページは、すべてのセクションフォームの塗りつぶしの後にリロードする豊富なフォームを持っているということです。ユーザーがブラウザ/タブを閉じるときにのみbeforeloadを呼び出す
手段ページには複数のフォームがあり、それぞれに独自の送信ボタンがあります。ユーザーが1つを保存すると、form
ページがリロードされます。 しかし、リロード時にbeforeunload
が解雇され、ユーザーに「ウェブサイトから退出しますか?」と尋ねます。ユーザーはウェブサイトから離れるつもりはなく、ページを再ロードしただけです。
要するに、ページのリロード時にbeforeunloadを避け、ユーザーがタブまたはブラウザを閉じるときにのみ呼び出します。それが可能ですか?
私は、次のコードを試してみましたが、それはうまくいきませんでした:
window.onbeforeunload = function(e) {
var e = e || window.event;
var target = e.target.URL;
if (target == "http://mywebsite.com/customerdetails")
{
return false;
}
};
答えはありますが、動作していません:(デモを試してみましたか?) – Hammad
デモでは、再読み込みを試みて、プロンプトメッセージが表示されます。 –
私はあなたのJSBinリンクを開いてf5を押して、警告を表示しました。私はそれを望んでいません。私はタブ/ウィンドウを閉じようとするときに、その時にプロンプトを表示します。 – Hammad