2012-08-06 106 views
0

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

,我发现这一点: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; 
    } 
}); 

但是打字期间完美的作品,如果用户复制和粘贴“$ 1230”,它使$在那里。我想它自动剥离它....

所以,基本上,我在想,而不是“返回false”,我需要某种“替换”?这是最好的方式吗?

回答

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; 
    } 
}); 
+0

其实我也尝试的!那么,我试着改变它。 :)无论如何,这似乎并没有工作。更糟糕的是,我现在可以在文本框中输入任何东西,并且......它有时会随机替换整个东西.... haha​​ – PaulHanak 2012-08-06 16:15:58

+0

原谅我,我在右括号中出现语法错误......除了当我复制和粘贴字符在... – PaulHanak 2012-08-06 16:22:53

相关问题