首页 > 技术文章 > 表单整数的校验问题

heimanba 2014-07-03 17:37 原文


 onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false" 


利用KeyPress事件,可以过滤掉不符合的一些键值。

   项目中有个需要在鼠标不移出输入框的时候校验整数的需求。

   keypresskeyup结合使用: 

 

HTML代码: 

<input type="text"  class="test" onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false"> 

 

javascript代码: 

$(".test").on("keyup",function(event){
    var _this = $(this),
        _value = _this.val();
    if(_value.slice(0,1)=="0"){
        _this.val(0);
    }else if(!/^[0-9]+$/ig.test(_value)){
//_this.val(_value.slice(0,_len-1));
_this.val(_this.val().replace(/[^0-9]/ig,""));
return;
}

}) 

这样结合就可以比较完美解决在鼠标不移出输入框时候整数校验问题。

 

 

 

 

推荐阅读