首页 > JS专栏 > JS验证文本框输入的是否为数字
2015
07-13

JS验证文本框输入的是否为数字

在写商城充值系统时,我们总会留一个文本框给用户输入要充值的金额,但是为了防止有些用户疏忽大意输入非数值的支付款,我们需要对改文本框进行限制。

主要功能:当用户输入非数值的字符串时,js自动把字符串清除

HTML代码:

<input type="text" name="amount" onkeyup="clearNoNum(this);"/>

javascript代码:

//消费金额必须是数字
function clearNoNum(obj){
   obj.value = obj.value.replace(/[^\d.]/g,"");  //清除“数字”和“.”以外的字符
   obj.value = obj.value.replace(/^\./g,"");  //验证第一个字符是数字而不是.
   obj.value = obj.value.replace(/\.{2,}/g,"."); //只保留第一个. 清除多余的.
   obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
}