- 締切済み
ホームページ内でEnterキー押下時にフォーカスを移動したい
イントラネットでホームページの管理をしています。 個人認証画面にてユーザー→パスワードを入力してもらい、認証ボタンを押してメインページへ飛ぶ画面があります。 ユーザー入力後にEnterキー押下でパスワードへ、 パスワード入力後にEnterキー押下で認証ボタンへ それぞれフォーカスを移動したいのですが、実現方法がわかりません。 javascriptでfocus()及びblur()を使えばと思いましたが、キー入力イベントの取得方法がわかりません。 ページ先頭にてdocument.onkeydownから取得する方法だと初回のみの取得しか出来ませんでした。 それぞれのオブジェクトでキー入力のイベント判定をしてフォーカスを移動する方法があれば教えてください。 OS :WIN2K ブラウザ:NetScape4.0 PG :HTML(ASP,VBScript,JavaScript)
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
IE6, Firefox 1.5 で確認しましたが、 >ブラウザ:NetScape4.0 で動くかどうかは未確認です。 場合によっては、switch 文を if 文に target を別の方法で置き換えて下さい。 ---------------------------------------------------------------- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=SHIFT_JIS"> <title>Sample</title> <script> <!-- window.onload=function(){ document.FORM1.user.onkeydown=jump; document.FORM1.pass.onkeydown=jump; }; function jump(e){ e = (e) ? e : window.event; if(e.keyCode==13){ if(e.target){ switch(e.target.name){ case "user" : document.FORM1.pass.select(); return false; case "pass" : document.FORM1.cert.focus(); return false; } } else { e.keyCode = 9;//IE:OK, Firefox:NG - readonly } } return true; } //--> </script> </head> <body> <form name="FORM1" action="認証ページ" method="POST" > ユーザー名<input type="text" name="user" id="USER" tabindex="1"><br> パスワード<input type="password" name="pass" id="PASS" tabindex="2"><br> <input type="submit" name="cert" value="認証" tabindex="3"> </form> </body> </html>
お礼
ありがとうございました。