課題
フォームに諸設定を行い、submitします。
この処理の直後に ブラウザの「更新」または「F5」を押すと、
同じ内容でsubmit送信されてしまいます。
実現したいこと
WEBブラウザの「更新」ボタンまたは「F5」キーを押下した際に、
javascriptでイベントをキャッチして、
フォームの設定内容をクリアする
もしくは 画面遷移して同じ内容でsubmitすることを阻止したい。
補足
現在、submitして処理が失敗した場合は、
フォームの設定内容を保持した状態でその画面にとどまりますが、
成功した場合は画面遷移する仕様になっています。
このとき、処理が終わるとモーダル画面で
結果を表示する仕組みにしています。
ここで、submitされることを防止できたとしても、
(成功の場合)設定内容を保持した状態でその画面にとどまってしまうと、
同じ内容でsubmitできることになるため、理想としては
画面遷移する制御を施したいです。
プログラム
上述の通り対策としての目的は
WEBブラウザの「更新」ボタンまたは「F5」キーを押下した際の処理を
javascriptでカスタマイズしたいということでして、以下のページを参考にしました。
https://pisuke-code.com/js-how-to-detect-browser-unload/
window.addEventListener('beforeunload', function(e){ location.href = 'Menu'; });
上記、メソッドでWEBブラウザの「更新」ボタンまたは「F5」キーを押下した際に
メニュー画面に遷移する想定だったのですが、画面遷移されませんでした。
それどころか、デバッガとしてlogやalertを出してみたのですが、
表示されなかったため、この処理を通っていないようです。
WEBブラウザの「更新」ボタンまたは「F5」キーの制御は不可という記事も
多く見かけるのですが、無理なのでしょうか?
環境
・開発言語:Java 11
・開発環境:Eclipse
・Apache:Tomcat 9
回答1件
あなたの回答
tips
プレビュー