HTML で method=post を指定した form で submit したら、x=0&y=0 が追加されて困る:解決

背景

HTML で method に post を指定した form で submit したら、呼び出し先のパラメーターに「x=0」と「y=0」が追加されていてなんだこりゃ、と言う問題が発生しました。

原因

この問題が発生したのは自分のサイトではないため、とりあえず Firebug を使って遷移情報を追ったのですが、form のあるサイトに該当する input タグなどが存在しないのはもちろん、hidden タグや form タグの action 属性にもともとパラメーターが付いていた、などもありません。

でも、遷移先のネットワーク接続のキャプチャを見ると存在している。

imageによるsubmit

そもそも、x や y のような座標なんて使わないだろ・・

と思ったとき、form の送信 type が submit 値ではなく、image 値になっていることに気づきました。

そうです。
input type=”image” の場合は送信時にクリックされた位置をパラメーターで渡す仕様だったんです。

解決

今回は、type 属性値を image ではなく submit に変更し、デザインは CSS で指定することで解決しました。

まとめ

この問題に対する知識は持っていたのですが、即解決できなかったことが残念です(笑)

え?Webサイトのバックアップ、してないの!?

いざという時には復旧までしてくれる
『ワードプレス外部バックアップサービス』

■3つの特長
・自分でやらなくて良い
・いざという時の復旧付き
・外部サーバーにバックアップ

コメントを残す