为了账号安全,请及时绑定邮箱和手机立即绑定

如何给每个input都加上一个限制,只能输入数字与小数点?

如何给每个input都加上一个限制,只能输入数字与小数点?

慕桂英4014372 2019-03-04 16:51:49
input的type=number之后,出现上下加减的标志
查看完整描述

3 回答

?
qq_花开花谢_0

TA贡献1835条经验 获得超7个赞

input type="number"


查看完整回答
反对 回复 2019-03-14
?
一只萌萌小番薯

TA贡献1795条经验 获得超7个赞

复制的一个二次开发软件里的写法

input中添加属性 onkeypress="return WST.isNumberdoteKey(event)" onblur="javascript:WST.limitDecimal(this,2)" onkeyup="javascript:WST.isChinese(this,1)"


三个js函数可以添加到公共js文件中

//只能輸入數字和小數點

WST.isNumberdoteKey = function(evt){


 var e = evt || window.event; 

 var srcElement = e.srcElement || e.target;

 

 var charCode = (evt.which) ? evt.which : event.keyCode;            

 if (charCode > 31 && ((charCode < 48 || charCode > 57) && charCode!=46)){

     return false;

 }else{

     if(charCode==46){

         var s = srcElement.value;            

         if(s.length==0 || s.indexOf(".")!=-1){

             return false;

         }            

     }        

     return true;

 }

}

WST.limitDecimal = function(obj,len){


var s = obj.value;

 if(s.indexOf(".")>-1){

     if((s.length - s.indexOf(".")-1)>len){

         obj.value = s.substring(0,s.indexOf(".")+len+1);

     }

}

 s = null;

}

WST.isChinese = function(obj,isReplace){


 var pattern = /[\u4E00-\u9FA5]|[\uFE30-\uFFA0]/i

 if(pattern.test(obj.value)){

     if(isReplace)obj.value=obj.value.replace(/[\u4E00-\u9FA5]|[\uFE30-\uFFA0]/ig,"");

     return true;

 }

 return false;

}


查看完整回答
反对 回复 2019-03-14
  • 3 回答
  • 0 关注
  • 2566 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信