function clearNoNum(obj)
{
//先把非数字的都替换掉,除了数字和.
obj.value = obj.value.replace(/[^\d.]/g,"");
//保证只有出现一个.而没有多个.
obj.value = obj.value.replace(/\.{2,}/g,".");
//必须保证第一个为数字而不是.
obj.value = obj.value.replace(/^\./g,"");
//保证.只出现一次,而不能出现两次以上
obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
//只能输入两个小数
obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3');
}
<input type="text" id="aaa" name="aaa" οnkeyup="clearNoNum(this)" οnblur="clearNoNum(this)"/>
版权声明:本文为OO_hero原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。