SERVICE こんな事ができます

CNTACT ご相談はお気軽に

 ABOUT US こんな会社です



2008/01/22 by ゴウ

submitボタンとhistory.backの挙動

戻るボタン

送信フォームの内容確認画面に、「送信」ボタンと「戻る」ボタンを設置して、戻るを押すとhistry.back()で前のページに戻すというページを作りました。

で、動作確認の為戻るを押したところ、ページが戻らないでフォームが送信されてしまいました。

なんで???

ソースを見ると、ちゃんとhistry.back()と書いてあります。ん?でもちょっと待てよ?よーく見ると、こんなソースでした。

 おお、戻るのtypeがsusbmitになっている・・・!!

でも、ちゃんと動いたぜ?

挙動がおかしいよって旨を、担当の某プログラマに伝えたところ、

「え?俺の方ではちゃんと動いたよ?」

との事。

う、嘘だろ承太郎!?

原因はブラウザ

上記ソースを試してみたところ、FireFoxだとsubmitが優先され、opera、IE7ではhistory.back()が優先されるみたいです。

submitはフォームを送信する為にあるんだから、FireFoxの解釈の方が正しい気がするが、どうなんでしょう?

正しくは・・・

input typeはbuttonですね。

やはりzuyaごときにHTML部分を任せたのが間違いでした。

HTML部分は簡単な部分でもちゃんと俺がやらないと駄目ですね。

次回から気をつけよう。