输入数字时时验证,到小数位2位

/**
 * 输入实在验证
 * @param that
 */
var strLast = "";  //记录每次正常输入的
var strIndex = 0;  //记录每次正常输入的长度
function realmonitor(that){
	var val = that.value;
	var flag = true;
	if(val.length > 0){
		if(isNaN(val)){//通过这个控制能是数字可以包含“.”
			val = strLast;
			flag = false;
		}
		var regx = /^\d+(\.\d{1,2})?$/; // 数字正则[?匹配0次或1次],只能输入两位小数
		if (!regx.test(val)) {
			if(val.substr(val.length-1,val.length) != "."){
				flag = false;
				val = strLast;
			}
		}
		if(val.length > 9){ //只能有9位数
			flag = false;
			val = val.slice(0,9);
		}
		if(flag == false){ //只有当值在上面的阶段改变以后才需要重新赋值
			that.value = val;
		}
		strLast = val;
		strIndex = val.length;
	}else{
		var val = strLast;
		if(strIndex == 1 || strIndex == 0){ //表示是最后一位
			val = "";
		}
		that.value = val;
	}
};

  

posted @ 2016-11-16 17:26  归尘2016  阅读(215)  评论(0编辑  收藏  举报