javascript - 数字字段删除非数字而不清除以前的数字?

标签 javascript jquery html

我正在使用:

<input type="text" onkeyup="this.value = this.value.replace(/\D/g, '')">

我用它来防止用户在我的页面上的字段中输入除数字之外的任何内容。但是,我注意到,如果用户先键入数字,但随后意外按下非数字键,则该字段将被清除,并且必须重新开始。这可能会导致沮丧,所以我想知道是否有一种方法可以调整代码,使其不会这样做,或者是否有我可以使用的类似方法。我仅限于 JavaScript、JQuery 和 HTML。任何帮助,将不胜感激! :)

最佳答案

我找到了解决问题的方法。我去掉了上面的代码并最终使用了 JS 函数。我把它放在我的 $(Document).ready(function() 中,我希望这可以帮助遇到同样问题的人!

$("#medianSalary").keydown( function(event) { if (event.shiftKey || (event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105)) { event.preventDefault();} }); });

关于javascript - 数字字段删除非数字而不清除以前的数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24460614/

相关文章:

jquery - 移动设备上的单击和双击事件

php - 从php中的文件目录中删除文件扩展名

html - CSS 媒体查询冲突

javascript - 如何在 Firefox/Chrome 扩展中访问 Evernote API?

jquery 选择除每组最后一个元素之外的所有元素

css - 如何设置 3 div 以适应屏幕宽度

asp.net - 登录控件不居中

javascript - 为什么 Chrome 开发者工具/控制台不显示动态加载的 javascript 文件/错误?

javascript - 将 'this' 与 function.apply 一起使用时接受的约定

javascript - 抽象类中用于创建 self 实例的 Typescript 静态方法