JS実装はinput入力が数字であるか否かを判断する
1590 ワード
まず各事件の違いを理解する keydown:コントロールにフォーカスがある場合にキーを押すと が発生する. keypress:コントロールにフォーカスがある場合にキーを押すと が発生する. keyup:コントロールにフォーカスがある場合にキーを解放すると が発生する.
意味 keypressは主にアルファベット、数字などのANSI文字を受信するために使用されます.keydownおよびkeyupイベント・プロシージャは、通常、PrScrnのすべてのキー(ここでは特殊なキーボードの特殊なキーは論じない)を除いて、キーボードをキャプチャすることができる . keypressは単一文字のみをキャプチャし、keydownとkeyupはコンビネーションキー をキャプチャすることができる. keypressはキーボードの物理状態(SHIFTキー)を表示せず、1文字だけを渡す.keypressは、各文字の大文字と小文字を異なるキーコードとして解釈し、すなわち2つの異なる文字として解釈する. keydownとkeyupはキー値のアルファベットの大きさを判断することができず、各文字の大文字形式と小文字形式を2つのパラメータで説明する:keycode-物理的なキー(Aとaを同じキーとして返す)とshift-shift+keyキーの状態を示し、Aまたはaのいずれかの を返す keypressはキーボードとメインキーボードの数字文字を区別せず、keydownとkeyupはキーボードとメインキーボードの数字文字を区別する keydown、keyupイベントは、(keydown)を押したり、キーを放したりしたときに発生します.通常、キーボードのキーを押すとすぐに離すことが多い(マウスとは異なる)ため、この2つのイベントの使用の違いは大きくありません.また、upと他の2つの違いは、keyが修正した状態を判断するにはup を使用する必要があります.
意味
<div><input id="input" onkeydown="return a(event)"/><p></p></div>
<script type="text/javascript" defer="defer">
function a(e){
var keyCode = e.keyCode;
if(!isNumber(keyCode)){
$('p').html(" ");
return false;
}else{
$('p').html("");
}
};
function isNumber(keyCode){
if((keyCode>=48)&&(keyCode<=57))
return true;
if((keyCode>=96)&&(keyCode<=108))
return true;
if(keyCode == 8)
return true;
return false;
}; </script>