ユーザーがjqueryで「印刷可能な」文字を押すようにするにはどうすればよいですか?
私はこれを試しますが、うまくいきません
$("#foo").keyup(function (e) {
if (e.charCode) {
console.debug('this is printable char');
}
});
数字、AZ az 文字、および「è、$、%」などのみが必要ですが、矢印、Enter、f5 などは必要ありません。
試す:
$("#foo").keyup(function (e) {
if (e.which < 0x20) {
console.debug('this is not printable char');
return;
}
else {
console.debug('this is printable char');
}
});
<script type="text/javascript">
$("input").keypress(function (e) {
if (e.which !== 0 && e.charCode !== 0) {
alert(String.fromCharCode(e.keyCode|e.charCode));
}
});
</script>
jQuery 1.4.2、FF、IE、Chrome で問題なく動作するようです。
JS キーボード イベント処理の混乱を掘り下げるには、 JavaScript Madness: Keyboard Eventsを参照してください。