js 验证工具类

来源:互联网 发布:闲鱼上推淘宝客链接 编辑:程序博客网 时间:2024/05/20 05:05
function StringUtils() { }

// 校验是否为空
StringUtils.hasText = function hasText(str) {
    if (str == undefined || str == null || str == "" || $.trim(str) == "") {
        return false;
    } else {
        return true;
    }
}

//校验是否全是数字
StringUtils.isDigit  = function (str) {
 var patrn=/^\d+$/;
 return patrn.test(str);
};

//校验是否是整数
StringUtils.isInteger = function (str) {
 var patrn=/^([+-]?)(\d+)$/;
 return patrn.test(str);
};

//校验是否为正整数
StringUtils.isPlusInteger = function (str) {
 var patrn=/^([+]?)(\d+)$/;
 return patrn.test(str);
};

//校验是否为负整数
StringUtils.isMinusInteger = function (str) {
 var patrn=/^-(\d+)$/;
 return patrn.test(str);
};

//校验是否为浮点数
StringUtils.isFloat=function(str){
 var patrn=/^([+-]?)\d*\.\d+$/;
 return patrn.test(str);
};

//校验是否为正浮点数
StringUtils.isPlusFloat=function(str){
  var patrn=/^([+]?)\d*\.\d+$/;
  return patrn.test(str);
};

//校验是否为负浮点数
StringUtils.isMinusFloat=function(str){
  var patrn=/^-\d*\.\d+$/;
  return patrn.test(str);
};

//校验是否仅中文
StringUtils.isChinese=function(str){
 var patrn=/[\u4E00-\u9FA5\uF900-\uFA2D]+$/;
 return patrn.test(str);
};

//校验是否仅ACSII字符
StringUtils.isAcsii=function(str){
var patrn=/^[\x00-\xFF]+$/;
return patrn.test(str);
};

//校验手机号码
StringUtils.isMobile = function (str) {
 var patrn = /^0?1((3[0-9]{1})|(59)){1}[0-9]{8}$/;
 return patrn.test(str);
};

//校验电话号码
StringUtils.isPhone = function (str) {
 var patrn = /^(0[\d]{2,3}-)?\d{6,8}(-\d{3,4})?$/;
 return patrn.test(str);
};

//校验URL地址
StringUtils.isUrl=function(str){
var patrn= /^http[s]?:\/\/[\w-]+(\.[\w-]+)+([\w-\.\/?%&=]*)?$/;
return patrn.test(str);
};

//校验电邮地址
StringUtils.isEmail = function (str) {
 var patrn = /^[\w-]+@[\w-]+(\.[\w-]+)+$/;
 return patrn.test(str);
};

//校验邮编
StringUtils.isZipCode = function (str) {
 var patrn = /^\d{6}$/;
 return patrn.test(str);
};

//校验合法时间
StringUtils.isDate = function (str) {
  if(!/\d{4}(\.|\/|\-)\d{1,2}(\.|\/|\-)\d{1,2}/.test(str)){
    return false;
  }
  var r = str.match(/\d{1,4}/g);
  if(r==null){return false;};
  var d= new Date(r[0], r[1]-1, r[2]);
  return (d.getFullYear()==r[0]&&(d.getMonth()+1)==r[1]&&d.getDate()==r[2]);
};

//校验字符串:只能输入6-20个字母、数字、下划线(常用手校验用户名和密码)
StringUtils.isString6_20=function(str){
 var patrn=/^(\w){6,20}$/;
 return patrn.test(str);
};