■ はじめに
* JavaScriptで、キーイベントを制御する例を記載する
■ 例1:Enterキーで、別のテキストボックスに移動
* Windowイベントのキーコード(window.event.keyCode)から、該当するキーコードかどうかを判定 * 該当するキーコードだったら、フォーカスメソッド(document.all.item(【id】).focus())でフォーカス移動
サンプル
<html> <head> <script language="javascript"> function mobeNextFocus(code, idName){ if (code == Event.KEY_RETURN) { document.all.item(idName).focus(); } } </script> </head> <body> <form name="form1"> <input type="text" name="TextBox1" onkeypress="mobeNextFocus(window.event.keyCode,'TextBox2')" /><br> <input type="text" name="TextBox2" onkeypress="mobeNextFocus(window.event.keyCode,'TextBox3')" /><br> <input type="text" name="TextBox3" /><br> <input type="submit" /> </form> </body> </html>
補足
* Event.KEY_RETURN : リターンキーのコード (13)
参考資料
http://social.msdn.microsoft.com/forums/ja-JP/vwdexpressja/thread/0d5ff2cd-b85e-4b65-8ccc-49de57db8dfc/■ 例2:キーを無効にする
サンプル
* IE限定<script type="text/javascript"> <!-- // window.document.onkeydown = onKeyEvent; function onKeyEvent() { // 発生したイベントのキーコードを取得 var code = event.keyCode; // 該当するキーコードで分岐。 var returnValue = true; switch (code) { case 13: //Enter キー returnValue = false; // 無効 break; default: returnValue = true; break; } return returnValue; } --> </script>
補足
* 以下の関連記事で実際に活用https://blogs.yahoo.co.jp/dk521123/36099100.html
参考文献
http://www.syboos.jp/webjs/doc/disable-key-event.htmlhttp://d.hatena.ne.jp/elwoodblues/20110829/1314606533