Code

2014年9月19日金曜日

リターンキーでフォーム Submit

 昨日、変なバグが見つかった:ある input text にフォーカスを押して、リターンキーをクリックしたら、画面が更新されました。。。何でだろうと思った。。。
 実際見てみると、input は form タグの中にあるので、フォームの action は "#" と書かれています。# だと、自分のアドレスに submit されますので。。。でも input は text type だし、submit タイプではないから、何で submit がトリッガーしただろう??
 調べてみたら、もし Form の中に input text が一つだけある場合、リターンキーを押すだけで、 form が submit されます。これはブラウザーの固有動作です。しかも IE 5 からあります。
 また、IE から変な動作を継承したな〜と思いました。
 直す方法としては form の action を削除するか、display : none の input text をもう一個追加するです。
 将来のブラウザーはこれを直さないだろう。メモしておこう。

 それでは。

0 件のコメント:

コメントを投稿