31 May 09
— javascriptでフォームを送信する際に気をつけること - パンプキンスパイスラテそれは、input要素にフォーカスしている時に「Enterキー」を押下した場合です。
フォームの仕様?として、input要素で「Enterキー」を押下すると、フォームのactionで指定した先へ post または get されてしまいます。これは通常、いちいち送信ボタンを押下せずに、フォームを送信できるので便利な機能なのですが、フォームの飛び先を動的に変えたいというプログラマ泣かせの機能です。いや、プログラマ初心者か。そこで、本来であれば、formタグにonsubmitで処理すれば良いのですが、もっと簡単にてっとり早く修正したい時。
とEnterキーを押下しても無効になるような処理を加えることで、とりあえず問題は解決できます。ただinputが複数ある場合は、面倒なうえにソースが汚くなるので、onsubmitで処理をすることをオススメします。