Jquery控制只能输入数字的常见方法

来源:互联网 发布:张国荣为什么自杀 知乎 编辑:程序博客网 时间:2024/06/14 15:06

jquery 限制文本框只能输入数字

  

  1. $("input[name='searchBean.con1']").keyup(function(){  //keyup事件处理 

  2.         $(this).val($(this).val().replace(/\D|^0/g,''));  

  3.     }).bind("paste",function(){  //CTR+V事件处理 

  4.         $(this).val($(this).val().replace(/\D|^0/g,''));  

  5.     }).css("ime-mode""disabled");  //CSS设置输入法不可用

显示效果:
1023456789  
下面的代码匹配的是0-9和. 

$("#rnumber").keyup(function(){  

            $(this).val($(this).val().replace(/[^0-9.]/g,''));  

        }).bind("paste",function(){  //CTR+V事件处理  

            $(this).val($(this).val().replace(/[^0-9.]/g,''));   

        }).css("ime-mode""disabled"); //CSS设置输入法不可用  

显示效果: 
0.123456789
注意两个的正则表达式不同,匹配不一样。
第一个,只能输入>0的正整数。
第二个,只能输入0-9的数字和小数点。
Js代码 复制代码 收藏代码
  1. //监听键盘,只允许输入数字和小数点 
  2. // 注意此处不要用keypress方法,采用keyDown,否则不能禁用Ctrl+V,
  3. 具体原因请自行查找keyPress与keyDown区分,十分重要,请细查 
  4. //采用keydown例子:$(".checkNum").keydown(function(event)){}

  5.         $(".checkNum").keypress(function(event) { 
  6.             var keyCode = event.which; 
  7.             if (keyCode == 46 || (keyCode >= 48 && keyCode <=57)) 
  8.                 return true
  9.             else 
  10.                 return false
  11.         }).focus(function() { 
  12.             this.style.imeMode='disabled'
  13.         }); 
[js] view plaincopy
  1. //监听键盘,只允许输入数字和小数点   
  2. // 注意此处尽量不要用keypress方法,采用keyDown否则不能禁用Ctrl+V ,
  3. //具体原因请自行查找keyPress与keyDown区分,十分重要,请细查
  4.         $(".checkNum").keypress(function(event) {  
  5.             var keyCode = event.which;  
  6.             if (keyCode == 46 || (keyCode >= 48 && keyCode <=57))  
  7.                 return true;  
  8.             else  
  9.                 return false;  
  10.         }).focus(function() {  
  11.             this.style.imeMode='disabled';  
  12.         });  

imeMode有四种形式,分别是:

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



0 0
原创粉丝点击