使用Jquery自动将文本字段输入自动限制为数字?

时间:2012-08-06 16:04:36

标签: jquery validation

一直在做一些研究,但还没有为我找到解决方案。基本上,我有一个小的管理部分,需要数字输入进行计算。只有数字。但是,用户有时可以复制和粘贴,包括$或%字符。

现在,我发现了这个:input field, only numbers jquery/js

$("input[type=text]").keypress(function (e){
  var charCode = (e.which) ? e.which : e.keyCode;
  if (charCode > 31 && (charCode < 48 || charCode > 57)) {
    return false;
  }
});

在TYPING期间完美运行,但是,如果用户复制并粘贴“$ 1230”,它会将$保留在那里。我希望它能自动剥离它....

所以,基本上,我在思考而不是“返回假”,我需要某种“替换”?那会是最好的方式吗?

1 个答案:

答案 0 :(得分:2)

使用on代替keypress,同时使用keypresschange的事件:

$("input[type=text]").on("keypress change", (function (e){
  var charCode = (e.which) ? e.which : e.keyCode;
  if (charCode > 31 && (charCode < 48 || charCode > 57)) {
    return false;
  }
});