• ベストアンサー

タブキーでなくエンターキーで次の項目へ

すいませんおせーてください で、ダブルポストです すんごく初心者の質問かもしれません よくある、資料請求系のページで 名前、住所、TEl、メアド・・・ とか入れていく仮定において2つ質問があります。 1 ある項目(例えばテキストボックス)を入力して 次の項目に映る時タブキーを押すと移動するのはわかるのですが、それがエンターキーで次の項目に移動できるようにはできるのですか? 送信を押したのと一緒の扱いになってしまうので何とかならないかな?と 2 もう一つは漢字モードと半角モードを自動的に そのテキストボックスにフォーカスした時に 決めれるのですか? 2は出来た記憶があるのですが、どこにその説明が あったかわかりません 1はわかりませんでした。 <form >で行うやり方はわかったのですが、 資料請求なので、あらかじめ <form action=メールを送るcgi> お名前input 住所input 送信キー </form> とformで囲っているため 多分 <form action=メールを送るもの> <form action=エンターで次に移動するもの> お名前input 住所input 送信キー </form> </form> という囲いができないですよね?(←勘違いかもしれませんが) <form> </form> <form> </form> ならOKですが・・ でjavascriptでできるのかな?と思ってダブルポストです。 どこかのURLでも構わないので教えてくださいませんか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

1. 以下のjavascriptと、そのページの<BODY>タグにonkeyDown="ChgKeyCode()"を記述します。 *****javascript**** function ChgKeyCode(){ if (!(event.srcElement.type == "button" || event.srcElement.type == "submit")){ if (event.keyCode == 13){ event.keyCode = 9; } } } ボタンであれば、送信を押した扱になります。 2. テキストボックスでstyle="ime-mode: active;"を記述します。 ちなみに active :初期値が日本語入力モードになります。 inactive :初期値が英数字入力モードになります。 disabled :英数字入力モードになります。ユーザーの操作によるモードの変更はできません。 いかがでしょうか?

deepimpact
質問者

お礼

<html><head> <TITLE></TITLE> <script type="text/javascript"> function ChgKeyCode(){ if (!(event.srcElement.type == "button" || event.srcElement.type == "submit")){ if (event.keyCode == 13){ event.keyCode = 9; } } } </script> </head> <BODY onkeyDown="ChgKeyCode()" > <form action="./mail.cgi"> <INPUT size="20" type="text"><br> <INPUT size="20" type="text" tabindex="1"><BR> <INPUT size="20"><br> <input name="c" type="radio"><br> <input name="d" type="checkbox"><br> <input type="button" name="e" value="送信"> </form> </body> </html> これでいいんですよね? なんか上手くいかないんですけど (リターンもタブも反応しない) なんか間違ってますか? 2についてはいけると思います。 ありがとうございます。

その他の回答 (1)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

>なんか上手くいかないんですけど >(リターンもタブも反応しない) IEでは event.keyCode == 13 でいいんですけど、 モジラ系では function ChgKeyCode(e){ とかして e.which == 13 とします。 イベントに関するところは、ブラウザに依存するので、ブラウザを判別して、別々に処理を書かないといけません。

deepimpact
質問者

お礼

ありがとうございました 完璧っすね!!

関連するQ&A

専門家に質問してみよう