IE11でフォーム送信時に二重登録される
2021/03/11
Internet Explorer11でform送信時にデータが二重登録されるという不具合が発生した。FirefoxやGoogle Chromeでは発生しない。以下に原因と対応方法をメモ。
原因
該当のフォームが送信ボタンを押すとjQueryでバリデートし、問題が無ければ「$('#test_form').submit();」みたいな感じで送信し、その後「return true」と返していた。
上記の場合IEのみ「$('#test_form').submit();」と、フォーム側の2重で送信される模様。
対応方法
「return true」で返さず「return false」で返し、フォーム側の送信を防ぐことで改善した。
参考サイト
関連記事
-
-
jQueryからAjax経由でPHPにリクエストしCookieを操作する方法
先日PHPでCookie保存時にHttpOnly / Secure属性を設定する ...
-
-
フォームの入力内容をjQueryで取得し、本文として設定した上でメーラーを起動させる方法
formで何らかを入力してもらいボタンをクリックするとメーラーが開き、先ほど入力 ...
-
-
formのtextareaに文字を入力した内容をリアルタイムプレビューする方法
textarea内に書いた内容をリアルタイムでプレビューする機能が必要になった。 ...
-
-
AjaxFileUploadで処理は実行できてもエラーが返る
AjaxFileUploadでPHPに通信し、サーバー側のPHPで処理は正常に実 ...
-
-
jQueryで後から追加された要素にイベントを設定
jQueryで.html()等を使って追加した要素に対してイベントを設定したかっ ...