勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

IE11でフォーム送信時に二重登録される

   2021/03/11  jQuery JavaScript

Internet Explorer11でform送信時にデータが二重登録されるという不具合が発生した。FirefoxやGoogle Chromeでは発生しない。以下に原因と対応方法をメモ。

 

原因

該当のフォームが送信ボタンを押すとjQueryでバリデートし、問題が無ければ「$('#test_form').submit();」みたいな感じで送信し、その後「return true」と返していた。

上記の場合IEのみ「$('#test_form').submit();」と、フォーム側の2重で送信される模様。

 

対応方法

「return true」で返さず「return false」で返し、フォーム側の送信を防ぐことで改善した。

 

参考サイト

https://www.programming-se.com/?p=3164

https://www.nyamucoro.com/entry/2018/08/03/212717

 - jQuery JavaScript

  関連記事

jQueryからAjax経由でPHPにリクエストしCookieを操作する方法
jQueryからAjax経由でPHPにリクエストしCookieを操作する方法

先日PHPでCookie保存時にHttpOnly / Secure属性を設定する ...

フォームの入力内容をjQueryで取得し、本文として設定した上でメーラーを起動させる方法
フォームの入力内容をjQueryで取得し、本文として設定した上でメーラーを起動させる方法

formで何らかを入力してもらいボタンをクリックするとメーラーが開き、先ほど入力 ...

formのtextareaに文字を入力した内容をリアルタイムプレビューする方法
formのtextareaに文字を入力した内容をリアルタイムプレビューする方法

textarea内に書いた内容をリアルタイムでプレビューする機能が必要になった。 ...

AjaxFileUploadで処理は実行できてもエラーが返る
AjaxFileUploadで処理は実行できてもエラーが返る

AjaxFileUploadでPHPに通信し、サーバー側のPHPで処理は正常に実 ...

jQueryで後から追加された要素にイベントを設定
jQueryで後から追加された要素にイベントを設定

jQueryで.html()等を使って追加した要素に対してイベントを設定したかっ ...