1

我写了一个非常简单的类选择器,这样我就可以让 html 输入框只接受数字输入

$(".numericOnly").keypress(function (e) {
   if (e.keyCode == 13) return true;
   if (String.fromCharCode(e.keyCode).match(/[^0-9]/g)) 
      return false;     
});

然后,如果您有一个输入框,您只需将其指定为 class="numericOnly",它将只接受数字输入。

keyCode 13 为回车键,防止函数拦截拦截。

它在 Chrome 和 IE 9 中运行良好,但在 Firefox 中却失败了。不知道为什么。没有抛出错误。

4

2 回答 2

1

keyCode按下(或)的键的属性名称charCode因浏览器而异。尝试event.which改用,这会为您标准化。

于 2012-11-10T18:52:52.690 回答
1

keyCode在 keydown 和 keyup 处理程序中设置。 charCode在按键处理程序中设置,并指示输入了哪个字符(这与按下哪个键不同,因为存在不同的键盘布局)。

于 2012-11-10T20:55:22.737 回答