2016-08-23 21 views
0

数字だけを入力できるテキスト入力に単純なマスクを追加しました。Windowsキーパッドのキーコードが機能しない

jQuery(function($) { 
     $("#zip").keydown(function(event) { 
      // Allow only backspace and delete 
      if (event.keyCode == 46 || event.keyCode == 8) { 
       // let it happen, don't do anything 
      } 
      else { 
       // Ensure that it is a number and stop the keypress 
       if (event.keyCode < 48 || event.keyCode > 57) { 
        event.preventDefault(); 
       } 
      } 
     }); 
    }); 

私は全体来ている問題は、(彼らはMac上で見つける作業)キーパッドの数字は、Windows上で動作していないということです。私は、次のコードを使用してそれをやりました。しかし、キーボードの一番上の行にある数字は正常に動作します。誰もこれを前にして来たのですか?

答えて

1

。これはうまくいくはずです:

jQuery(function($) { 
    $("#zip").keydown(function(event) { 
     // Allow only backspace and delete 
     if (event.keyCode == 46 || event.keyCode == 8) { 
      // let it happen, don't do anything 
     } 
     else { 
      // Ensure that it is a number and stop the keypress 
      if ((event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105)) { 
       event.preventDefault(); 
      } 
     } 
    }); 
}); 
1

あなたは使用することができます:あなたは、あなたのif文でnumberpadためのキーコードを含めていない

jQuery(function($) { 
     $("#zip").keydown(function(event) { 
      var code = e.keycode || e.which 
      // Allow only backspace and delete 
      if (code == 46 || code == 8) { 
       // let it happen, don't do anything 
      } 
      else { 
       // Ensure that it is a number and stop the keypress 
       if (code < 48 || code > 57) { 
        event.preventDefault(); 
       } 
      } 
     }); 
    }); 
関連する問題