`
Ivan0513
  • 浏览: 211607 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

input框只能输入非负数

 
阅读更多
//通过2步做到输入的为非负数
//1.去掉多余的小数点
//2.保证只能输入小数点或数字
function onlyNonNegative(obj) {
 var inputChar = event.keyCode;
 //alert(event.keyCode);
 
 //1.判断是否有多于一个小数点
 if(inputChar==190 ) {//输入的是否为.
  var index1 = obj.value.indexOf(".") + 1;//取第一次出现.的后一个位置
  var index2 = obj.value.indexOf(".",index1);
  while(index2!=-1) {
   //alert("有多个.");
   
   obj.value = obj.value.substring(0,index2);
   index2 = obj.value.indexOf(".",index1);
  }
 }
 //2.如果输入的不是.或者不是数字,替换 g:全局替换
 obj.value = obj.value.replace(/[^(\d|.)]/g,"");
}

 

调用方法:

<input type="text" name="number" onkeyup="onlyNonNegative(this)" />

分享到:
评论
2 楼 Ivan0513 2011-03-31  
哇!!!!!这个真没想过。
1 楼 drager 2011-01-21  
复制进去的多余的小数点会存在的

相关推荐

Global site tag (gtag.js) - Google Analytics