设置页面文本框 只能输入数字的js方法

发布于 2022-10-15 09:09:45 字数 2573 浏览 23 评论 0

转:The only

设置页面文本框 只能输入数字的js方法

之前写过的方法有缺陷,可以输入空格。现在将空格也屏蔽了。就是在之前的代码里加入了过滤空格的功能。

代码如下:

  1. $("#money").bind("propertychange",function() {
  2.    
  3.         if(""!=this.value){
  4.         
  5.             var str = this.value.replace(/(^\s*)|(\s*$)/g, "");
  6.             if(this.value != str )
  7.                 this.value = str;
  8.         }
  9.         if( isNaN(Number(this.value)))
  10.             this.value = this.value.replace(/[\D]/,'');
  11.         });

复制代码这里使用了JQuery绑定到id为money的文本框的onpropertychange事件上。

下面的代码连小数点也屏蔽掉了

  1. $("#phone").bind("propertychange", function() {
  2.    
  3.         if(""!=this.value){
  4.         
  5.             var str = this.value.replace(/(^\s*)|(\s*$)/g, "");
  6.             if(this.value != str )
  7.                 this.value = str;
  8.         }
  9.         
  10.         if (this.value.indexOf('.') != -1) {
  11.             this.value = this.value.replace(/[\.]/, '');
  12.             this.focus(); }  
  13.             
  14.         if (isNaN(Number(this.value))) {
  15.             this.value = ($.trim(this.value)).replace(/[\D]/, '');
  16.             this.focus(); } });

复制代码最后,最好将输入法屏蔽掉。 通过css,ime-mode:disabled就可以实现。

如果很严格的话,可以再追加上禁止粘贴与拖拽。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文