Javascript验证方法大全

本文整理了关于Javascript表单验证的所有涉及到的,大家仔细阅读一定会有所收获的 

//验证字符串非空 


var Validator = { 
  VerityLib: { 
       IsNotEmpty: function (input) { 
      if (input != '') { 
        return true; 
      } else { 
        return false; 
      } 
    }, 


 //验证数字(double类型) [可以包含负号和小数点] 
    IsNumber: function (input) { 
      var regex = /^-?\d+$|^(-?\d+)(\.\d+)?$/; 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 


 //验证整数 
    IsInteger: function (input) { 
      var regex = /^-?\d+$/; 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 


//验证非负整数 
    IsIntegerNotNagtive: function (input) { 
      var regex = /^\d+$/; 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 


 //验证正整数 
    IsIntegerPositive: function (input) { 
      var regex = /^[0-9]*[1-9][0-9]*$/; 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 


 //验证小数 
    IsDecimal: function (input) { 
      var regex = /^([-+]?[1-9]\d*\.\d+|-?0\.\d*[1-9]\d*)$/; 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    },    

//验证只包含英文字母 
    IsEnglishCharacter: function (input) { 
      var regex = /^[A-Za-z]+$/; 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 


 //验证只包含数字和英文字母 
    IsIntegerAndEnglishCharacter: function (input) { 
      var regex = /^[0-9A-Za-z]+$/; 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 


 //验证只包含汉字 
    IsChineseCharacter: function (input) { 
      var regex = /^[\u4e00-\u9fa5]+$/; 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 


 //验证数字长度范围(数字前端的0计长度)[若要验证固定长度,可传入相同的两个长度数值] 
    IsIntegerLength: function (input, lengthBegin, lengthEnd) { 
      var pattern = '^\\d{' + lengthBegin + ',' + lengthEnd + '}$'; 
      var regex = new RegExp(pattern); 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 


//验证字符串包含内容 
    IsStringInclude: function (input, withEnglishCharacter, withNumber, withChineseCharacter) { 
      if (!Boolean(withEnglishCharacter) && !Boolean(withNumber) && !Boolean(withChineseCharacter)) { 
        return false; //如果英文字母、数字和汉字都没有,则返回false 
      } 
      var pattern = '^['; 
      if (Boolean(withEnglishCharacter)) { 
        pattern += 'a-zA-Z'; 
      } 
      if (Boolean(withNumber)) { 
        pattern += '0-9'; 
      } 
      if (Boolean(withChineseCharacter)) { 
        pattern += '\\u4E00-\\u9FA5'; 
      } 
      pattern += ']+$'; 
      var regex = new RegExp(pattern); 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 


 //验证字符串长度范围 [若要验证固定长度,可传入相同的两个长度数值] 
    IsStringLength: function (input, LengthBegin, LengthEnd) { 
      var pattern = '^.{' + lengthBegin + ',' + lengthEnd + '}$'; 
      var regex = new RegExp(pattern); 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 


 //验证字符串长度范围(字符串内只包含数字和/或英文字母)[若要验证固定长度,可传入相同的两个长度数值] 
    IsStringLengthOnlyNumberAndEnglishCharacter: function (input, LengthBegin, LengthEnd) { 
      var pattern = '^[0-9a-zA-z]{' + lengthBegin + ',' + lengthEnd + '}$'; 
      var regex = new RegExp(pattern); 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 


 //验证字符串长度范围 [若要验证固定长度,可传入相同的两个长度数值] 
    IsStringLengthByInclude: function (input, withEnglishCharacter, withNumber, withChineseCharacter, lengthBegin, lengthEnd) { 
      if (!withEnglishCharacter && !withNumber && !withChineseCharacter) { 
        return false; //如果英文字母、数字和汉字都没有,则返回false 
      } 
      var pattern = '^['; 
      if (Boolean(withEnglishCharacter)) 
        pattern += 'a-zA-Z'; 
      if (Boolean(withNumber)) 
        pattern += '0-9'; 
      if (Boolean(withChineseCharacter)) 
        pattern += '\\u4E00-\\u9FA5'; 
      pattern += ']{' + lengthBegin + ',' + lengthEnd + '}$'; 
      var regex = new RegExp(pattern); 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 


//验证字符串字节数长度范围 [若要验证固定长度,可传入相同的两个长度数值;每个汉字为两个字节长度] 
    IsStringByteLength: function (input, lengthBegin, lengthEnd) { 
      var regex = /[^\x00-\xff]/g; 
      var byteLength = input.replace(regex, 'ok').length; 
      if (byteLength >= lengthBegin && byteLength <= lengthEnd) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 


 //验证日期 [只能验证日期,不能验证时间] 
    IsDateTime: function (input) { 
      if (Date.parse(input)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 
    

//验证固定电话号码 [3位或4位区号;区号可以用小括号括起来;区号可以省略;区号与本地号间可以用减号或空格隔开;可以有3位数的分机号,分机号前要加减号] 
    IsTelePhoneNumber: function (input) { 
      var regex = /^(((0\d2|0\d{2})[- ]?)?\d{8}|((0\d3|0\d{3})[- ]?)?\d{7})(-\d{3})?$/; 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 
    

 //验证手机号码 [可匹配"(+86)013325656352",括号可以省略,+号可以省略,(+86)可以省略,11位手机号前的0可以省略;11位手机号第二位数可以是3、4、5、8中的任意一个] 
    IsMobilePhoneNumber: function (input) { 
      var regex = /^((\+)?86|((\+)?86)?)0?1[3458]\d{9}$/; 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 
    

 //验证电话号码(可以是固定电话号码或手机号码) 
    IsPhoneNumber: function (input) { 
      var regex = /^((\+)?86|((\+)?86)?)0?1[3458]\d{9}$|^(((0\d2|0\d{2})[- ]?)?\d{8}|((0\d3|0\d{3})[- ]?)?\d{7})(-\d{3})?$/; 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 
    

 //验证邮政编码 
    IsZipCode: function (input) { 
      var regex = /^\d{6}$/; 
      if (input.match(regex)) { 
        return true; 
      } else { 
        return false; 
      } 
    }, 
    

 //验证电子邮箱 [@字符前可以包含字母、数字、下划线和点号;@字符后可以包含字母、数字、下划线和点号;@字符后至少包含一个点号且点号不能是最后一个字符;最后一个点号后只能是字母或数字] 
    IsEmail: function (input) { 
      ////邮箱名以数字或字母开头;邮箱名可由字母、数字、点号、减号、下划线组成;邮箱名(@前的字符)长度为3~18个字符;邮箱名不能以点号、减号或下划线结尾;不能出现连续两个或两个以上的点号、减号。 
      //var regex = /^[a-zA-Z0-9]((? 
 

这次整理的很全面,很详细,希望可以真正的帮助到大家。对大家熟练掌握Javascript更有帮助。

你可能感兴趣的:(Javascript验证方法大全)