js验证input的通用自定义函数

因为在开发过程中总是能碰到对input的验证,所以就写了一个自定义的函数

能够验证长度,正则表达式, 非空这三个选项。

/*input验证*/
 /*value——输入的值*/
 /*regu——验证的正则表达式
  * null——没有正则的要求*/
 /*length——长度*/
 /*关于长度 
  * "[1,40]"——40字以内(1-40)
  * "[6|13]"——6位或者13位
  * "[4,4]"——只能是4位
  * null —— 没有长度要求
  */
 /*
  * 默认的验证
  * 非空,不能是纯空格,符合正则表达式, 符合长度要求
  * 返回值
  * 0 空
  * 1 正则
  * 2 长度
  * 3 正确
  */
 function checkInput(value, regu, length){
	 var ret = 3;

	 if( !hasValue(value) ){
		 ret = 0;
	 }
	 else{
		 value = value.trim();
		 if( regu != null ){
			 if( !regu.test(value) ){
				 ret = 1;
			 }
		 }
		 if(length != null){
			 var midIndex= 0;
			 var len1 = 0;
			 var len2 = 0;
			 //范围和相等
			 if(length.indexOf(",") != -1){
				 midIndex = length.indexOf(",");
				 len1 = length.substring(1, midIndex);
				 len2 = length.substring(midIndex+1, length.length-1);
				 
				 if(len1 == len2){
					 if(value.length!=len1){
						 ret = 2;
					 }
				 }
				 else{
					 if(value.length < len1 || value.length > len2){
						 ret = 2;
					 }
				 }
			 }
			 //或者
			 if(length.indexOf("|") != -1){
				 midIndex = length.indexOf("|");
				 len1 = length.substring(1, midIndex);
				 len2 = length.substring(midIndex+1, length.length-1);
				 if(value.length != len1 && value.length != len2){
					 ret = 2;
				 }
			 }
		 }
	 }
	 
	 return ret;
 }
 function hasValue(value){
	if(value == null || value == '' || value.trim() == ''){
		return false;
	}
	else{
		return true;
	}
}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值