博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jquery -- jquery控制只能输入数字和小数点
阅读量:6424 次
发布时间:2019-06-23

本文共 1378 字,大约阅读时间需要 4 分钟。

控制文本框只能输入数字是一个很常见的需求,比如电话号码的输入、数量的输入等,这时候就需要我们控制文本框只能输入数字。在用js控制之后在英文输入法的状态下去敲击键盘上的非数字键是输不进去的,然而当你转到中文输入法的时候输入的是中文,再按空格或回车键,中文或英文字母就输进去了,这时候就需要我们在文本框得到焦点的时候把输入法关闭,就是不响应输入法的切换。如下语句可以实现这样的功能。

 

通过keyCode来处理

下面的语句是用jquery写的,控制class为checkNum的文本框只能输入数字和小数点。

//监听键盘,只允许输入数字和小数点   $(".checkNum").keypress(function(event) {         var keyCode = event.which;         if (keyCode == 46 || (keyCode >= 48 && keyCode <=57)) return true;         else return false;         }).focus(function() {                 this.style.imeMode='disabled';         });

imeMode有四种形式,分别是:

active 代表输入法为中文

inactive 代表输入法为英文
auto 代表打开输入法 (默认)
disable 代表关闭输入法

 

通过正则表达式来处理

       /*JQuery 限制文本框只能输入数字*/              $(".NumText").keyup(function(){                        $(this).val($(this).val().replace(/D|^0/g,''));                  }).bind("paste",function(){  //CTR+V事件处理                        $(this).val($(this).val().replace(/D|^0/g,''));                     }).css("ime-mode", "disabled"); //CSS设置输入法不可用                 /*JQuery 限制文本框只能输入数字和小数点*/            $(".NumDecText").keyup(function(){                        $(this).val($(this).val().replace(/[^0-9.]/g,''));                    }).bind("paste",function(){                      $(this).val($(this).val().replace(/[^0-9.]/g,'')); //粘贴的不是数字,则替换为''                 //或 return false; 禁用粘贴功能                }).css("ime-mode", "disabled"); //CSS设置输入法不可用

 

转载地址:http://uprra.baihongyu.com/

你可能感兴趣的文章
ionic 字体的导入方法
查看>>
IP路由原理
查看>>
内部类详解
查看>>
洛谷P2726 阶乘 Factorials 数学
查看>>
类加载机制
查看>>
火柴棒等式(2008年NOIP全国联赛提高组)
查看>>
mongodb int型id 自增
查看>>
【转】关于大型网站技术演进的思考(十八)--网站静态化处理—反向代理(10)...
查看>>
Java中的4种代码块
查看>>
Ocelot(七)- 入门
查看>>
生成水杯热气
查看>>
程序员工作心法
查看>>
三个常用的PHP图表类库
查看>>
python中异常处理--raise的使用
查看>>
高中数学与初中数学的接轨点
查看>>
python 安装第三方模块
查看>>
Whitelabel Error Page 专题
查看>>
Spring Data Redis—Pub/Sub(附Web项目源码)
查看>>
RSD和wlwmanifest是什么
查看>>
Linkedin工程师是如何优化他们的Java代码的(转)
查看>>