一直在做一些研究,但还没有为我找到解决方案。基本上,我有一个小的管理部分,需要数字输入进行计算。只有数字。但是,用户有时可以复制和粘贴,包括$或%字符。
现在,我发现了这个: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”,它会将$保留在那里。我希望它能自动剥离它....
所以,基本上,我在思考而不是“返回假”,我需要某种“替换”?那会是最好的方式吗?
答案 0 :(得分:2)
使用on
代替keypress
,同时使用keypress
和change
的事件:
$("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;
}
});