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>