勉強したことのメモ

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

  関連記事

「display: block !important;」指定された要素をjQueryで非表示にする方法
「display: block !important;」指定された要素をjQueryで非表示にする方法

jQueryで特定の要素を非表示にしたかったのでhide()を使用したところ非表 ...

jQueryにて複数のajax処理のレスポンスをまとめて表示する方法
jQueryにて複数のajax処理のレスポンスをまとめて表示する方法

同時にajax処理を行う際、挙動やコードの書き方に悩まされることが多い。例えばA ...

jQueryのfind実行時に複数のセレクタを指定する方法
jQueryのfind実行時に複数のセレクタを指定する方法

jQueryのfind()実行時に複数のセレクタを指定したい。 <div ...

jQueryで後から追加した要素にhasClass / addClass / removeClassを使用した際の挙動
jQueryで後から追加した要素にhasClass / addClass / removeClassを使用した際の挙動

jQueryで後から追加した要素にhasClass / addClass / r ...

HTMLのカスタムデータ属性をjQueryで取得する際はキャッシュに注意する
HTMLのカスタムデータ属性をjQueryで取得する際はキャッシュに注意する

ASPを使用したサイトでHTMLのカスタムデータ属性を取得し色々処理したかったん ...