IEの場合だけ、フォームでEnterを押してもうまく動作しない

IEの6~8で確認したのだけど、Form内でのSubmitボタン押下を、Enterキー押下でやったときに、そのSubmitボタンがリクエストに格納されてない、という不具合に、本日ぶち当たりました。

ググってみると、OPQR.jpさんのページを見つけて、無事原因が分かりました♪

理由はIEの場合、

テキストボックスが1つしかないフォームでは、
Enterキーを押しても、submitボタンの情報がサーバに送信されない

という、バグ(仕様?)らしい。

マイクロソフトさん、嗚呼、そうですか?
名前を、「真っ黒ソフト」に帰ればいいのにw(上司談

解決策としては、下記のように、1つテキストボックスをダミーで追加。
スタイル設定で見えなくすればいいらしい。
最初のテキストは送信される模様なので、要は、テキストボックスを2つ以上にすればいいってことみたいです。

<form name="" method="POST" action="">
    <input type="text" name="" value="" />
    <input type="submit" name="" value="送信" />
    <!-- ↓これが対処策 -->
    <input type="text" name="ie_no_baka" value="" style="display:none;" />
</form>
lCuOLO
2010年 1月 28日 | Posted in PHP
タグ:
まだコメントはありません。

コメントする

XHTML: 使用可能タグ: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <img localsrc="" alt="">