• ベストアンサー

JavaScriptの文字コードについて

テキストボックスに入力された文字の文字コードを表示させたいのですが、 /を入力すると、文字コードは191と出力されます。 /の文字コードは47だったと思うのですが。 文字コードを出力するソースは以下のようになっています。 //--押されたキ-コードを返す function getKEYCODE_A(){ alert("true" + event.keyCode) } これをinputタグのonKeyUp属性に指定しています。 なぜ/の文字コードが191となるのか分かる方がいましたら、 教えてください。 よろしくお願いします。

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

  • ベストアンサー
  • kou2000
  • ベストアンサー率29% (14/48)
回答No.3

onkeydown、onkeyup では基本的に押されたキーの Unicode を返し、onkeypress では基本的に入力されようとしている文字のコードを返すようです。なので表示されるコードが違うということです。

mmn77_777
質問者

補足

押した文字のUnicode(10進数)が返るということですか?

その他の回答 (2)

  • kou2000
  • ベストアンサー率29% (14/48)
回答No.2

各キーイベントに対するキーコードは各イベント毎にバラバラ見たいです。 英数字以外のキーは「keydown,keyup」時のキーコードが特殊だそうです。なので「keypress」で試してみてください。

mmn77_777
質問者

補足

回答いただきありがとうございます。 早速、「keypress」で試してみたところ、「/」は47と表示されました。 では、「keydown,keyup」時の「/」のキーコードは、 191と認識した方がいいのでしょうか。

  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

文字コード ≠ キーコードです

関連するQ&A