イベントでローカライズされたキャラクターを取得する必要がありますkeypress
。例: チェコ語のキーボードでは、5 文字 (キーコード 53) ではない ř を取得する必要があります (チェコ語のキーボード レイアウトを参照)。文字を取得し、テキスト入力と読み取り値を使用しない他の方法はありますか? つまり、現在のユーザーのキーボード レイアウトを考慮して、イベント オブジェクトから文字を取得する方法はありますか?
(サンプルコードを追加)
<html>
<body>
<script language="JavaScript">
function onLoad() {
console.log(document.getElementById("test"));
document.getElementById("test").onkeydown = function(event) {
console.log("Code: "+event.keyCode+"; Key: "+String.fromCharCode(event.keyCode));
}
}
</script>
<body onLoad="onLoad();">
<input id="test">
</body>
</html>
(オンライン例)
このコードを試してř-key を押すと、Firebug コンソールに "Code: 53; Key: 5" と表示されます。そして、「5」ではなく「ř」を取得する必要があります。
この「問題」は、英語以外のすべてのキーボードで発生すると思います。