- 2018.08.22
- プログラミング
submit()がMozilla Firefoxで動かないエラー

私が管理しているWEBシステムの事で、クライアントからこんなお問い合わせがありました。
「頻繁にというわけではないが、『注文ページの途中から進めなくなる』というユーザーからのクレームがくる」らしいのです。
このシステム、実は開発会社と連絡がつかなくなってしまっていて、私に課題を定期的に与えてくれるのですw
Mozilla Firefoxだけボタンが反応しない・・
各ブラウザのチェックを行いましたが、Mozilla Firefoxだけボタンが反応しなくなっているようでした。
システム会社に開発してもらったときには気付かなかったのでビックリです。
とにかく調査して原因をつきとめなくてはなりません。
反応しなかったボタンは、imgタグのonclickイベントとしてsubmitを使用していました。
JavaScriptがダメなのか?
同じような症状の記事を探してみると、どうやら「submit」がらみのブラウザ依存のトラブルの記事が多く見つかりました。
JavaScript「.submit()」がMozilla Firefoxで効かないというのが一番それっぽかったので、inputタグのname属性としてsubmitを使用する方法に変更しました。
こちらで一応解決
画像クリックでsubmitの機能を使いたい場合
例えば
<img src="画像URL" onclick="submit(this.form)" />
のような書き方だとMozilla Firefoxで動かなかったりします。
<input name="submit" src="画像URL" type="image" />
といった書き方に変更すれば無事に動くはず!です。
画像じゃなくてsubmitの機能を使いたい場合
画像じゃなくていいのであればシンプルに
<input type="submit" value="〇〇" />
でいいと思います。CSSで画像のように装飾してもいいですね!
Mozilla Firefoxとは
Mozilla Firefox(モジラ・ファイアーフォックス)はフリーでオープンソースなウェブブラウザです。
Windows、macOS、Linuxでも使用できちゃいますし、Android用にFirefox for Androidというものもありますよ。