[解決済み] フォームの再送信を防止する
2022-10-05 23:17:47
質問
1ページ目はHTMLフォームが含まれています。2ページ目 - 提出されたデータを処理するコード。
ページ 1 のフォームが送信されます。ブラウザは2ページ目にリダイレクトされます。ページ2は送信されたデータを処理します。
この時点で、2ページ目が更新されると、"Confirm Form Resubmission"のアラートがポップアップ表示されます。
これを防ぐことはできますか?
どのように解決するのですか?
ここでは、2つのアプローチをとっています。
方法1: AJAX+リダイレクトを利用する
この方法では、ユーザーがページ1を表示したまま、JQueryなどを使用してバックグラウンドでフォームをページ2に投稿します。投稿に成功したら、ブラウザをPage2にリダイレクトします。
方法2: 投稿+自分へのリダイレクト
これはフォーラムでよく使われる手法です。ページ1のフォームはデータをページ2にポストし、ページ2はデータを処理して必要なことを行い、その後自分自身にHTTPリダイレクトを行います。この方法では、ブラウザが記憶する最後のアクションはページ 2 の単純な GET であり、F5 したときにフォームが再送信されることはありません。
関連
-
[解決済み] Webフォームのフィールド/入力タグでブラウザのオートコンプリートを無効にするにはどうすればよいですか?
-
[解決済み] チェックボックスとそのラベルをクロスブラウザーで一貫して揃える方法
-
[解決済み] フォーム送信のようなJavaScriptのポストリクエスト
-
[解決済み] JavaScript/jQueryでフォームデータを取得するには?
-
[解決済み] Ajaxを使用して1つのフォームでデータとファイルの両方をアップロードする?
-
[解決済み] jQueryで'Enter'でフォームをサブミット?
-
[解決済み] application/x-www-form-urlencoded or multipart/form-data?
-
[解決済み】未保存の変更を含むウェブページを離れる前にユーザーに警告を表示する
-
[解決済み] AngularJSでフォームの入力を条件付きで要求するにはどうすればよいですか?
-
[解決済み】JavaScriptのフォーム送信 - 送信の確認またはキャンセルダイアログボックス
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Angular 2: formGroup は FormGroup のインスタンスを期待します。1つを渡してください。
-
[解決済み] Angular 2: formGroup は FormGroup のインスタンスを期待します。1つを渡してください。
-
[解決済み] 使用用途
-
[解決済み] 無料または手頃な価格のOCRおよびICR(手書き文字認識)SDK?[クローズド]
-
[解決済み】GETメソッドとPOSTメソッドはいつ使うべきですか?両者の違いは何ですか?
-
[解決済み】チェックしたラジオボタンのラベルをCSSセレクタで指定する方法
-
[解決済み] ページ更新時にフォームの再送信を行わないようにするには (F5 / CTRL+R)
-
[解決済み] 送信」ボタンを無効にするには?
-
[解決済み] カピバラを使って、フォームのフィールドが正しくプリフィルドされているかどうかを確認するにはどうすればよいですか?
-
[解決済み] Razorで "Html.BeginForm "を記述する方法