明らかに、Webアプリケーションはユーザーのキーボード設定に合わせる必要がありますよね?KeyDownではなく実際のKeyPressイベントに接続するようにDojoに指示する方法はありますか?そうすれば、文字を入力することができますevent.charCode
か?
私たちは複数のオペレーティングシステムなどを備えた国際的な世界に住んでいるため、ブラウザにオペレーティングシステムに問い合わせる機能が組み込まれていない限り、この情報ではユーザーが実際に入力した文字を見つけるのに十分ではありません。
例として、Linuxのドイツ語キーボードでは、[Alt Gr-8を介して到達します。AltGr-8は、Altのキーダウンを送信し、次に[を使用してキーダウンを送信します。いいでしょう、最初の部分は無視してください。ドイツ語キーボードを使用するWindowsシステムでは、2番目のイベントはctrlKeyとaltKeyがtrueに設定された8の場合です。他のキーボード設定では、このキーコンボは実際には別の文字を意味するため、JavaScriptコードはハードコードされたものを解釈する必要はないと思います。
別の例として(おそらくDojoに接続されていませんが、別のプログラマーの不具合、暴言を言って申し訳ありません…)、MacのUSキーボードでは、OutlookWebインターフェイス内にドイツ語の文字ßを入力できません。 !)Altキー(Macでは入力された文字を変更するためにのみ使用されます)をハイジャックしてアクションをトリガーし、alt-sを再マップして送信を意味します。もちろん、通常は単語の途中です。