javascript - 删除键的 ASCII 键代码错误

标签 javascript ascii keycode

我有一个 HTML 表单,其中只需要允许按数字键。为此我使用了以下代码

    $(".span8").keypress(function(e) 
    {
         var unicode=e.charCode? e.charCode : e.keyCode
     //alert(unicode);
     if ((unicode ==8) || (unicode==9)|| (unicode==46)){
        //if the key isn't the backspace key (which we should allow)
     }
     else
     {
         if (unicode<48||unicode>57&&unicode!=65) //if not a number
         return false //disable key press
     }

});

但是如果我正在测试键码,我得到的删除键值为 46。 46 代表点(- 句点) 其他值都是正确的。我无法找到我是否出错了。 请帮忙

最佳答案

我在 keypress 函数中也发现了这种奇怪的行为。

相反,请尝试以下操作:

jQuery(function($) {
  var input = $('.span8');
  input.on('keydown', function() {
    var key = event.keyCode || event.charCode;

    if(key == 8 || key == 46)
        //Do something when DEL or Backspace is pressed
  });
});

关于javascript - 删除键的 ASCII 键代码错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24447585/

相关文章:

Java ASCII 字符作为字符串输入

character-encoding - 什么是垂直制表符?

javascript - 将 HEX ASCII 解析为数字?

javascript - 使用用户输入在 HTML5 Canvas 中移动对象

android - 如何将键码转换为字符或字符串?

Javascript 暂停事件传播

java - 如何获取具体日期?

javascript - 允许用户提交的 JS 在不影响安全性的情况下执行

android - android中非拉丁字符的识别

javascript - 区分仅触摸设备和鼠标触摸设备