因为在开发过程中总是能碰到对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;
}
}