⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 front_chec.js

📁 OFFICE办公自动化
💻 JS
字号:
/*==============================
作者:唐小刚/展亮
功能:主要完成前台数据验证
开发时间:2002.10
修改日期:2004.10
参数说明:frm:为待检查的对象,str:为提示语句,len:为求的长度
修改者:
修改日期:
说明:本代码为自由代码,用户可以自由使用,但请保留作者文件头部说明
   在使用过程中如出现什么问题请及时与作者联系。
   联系方式:电子邮件:ae.ru@263.net QQ:159357
        电子邮件:zlbox@yeah.net QQ:2343397
================================*/
//检查数据是否为空
function checnull(frm,str)
{
  re=/^\s{0,}$/
  if(re.test(frm.value))
	{
       alert(str)
	  frm.focus()
	  return false
	}else
	{
      return true
	}
}
//检查数据是否全为数字
function checnumber(frm,str)
{
  if(isNaN(frm.value) && frm.value!="")
	  {
         alert(str);
		 frm.select();
		 return false;
	  }else
	  {
         return true;
	  }
}
//检查数据是否全为整数
function checint(frm,str)
{
  re = /^-{0,1}\d+$/
  if(!re.test(frm.value) && frm.value!="")
	  {
         alert(str);
		 frm.select();
		 return false;
	  }else
	  {
         return true;
	  }
}
//检查数据是否全为正整数
function checplusint(frm,str)
{
  re = /^\d+$/
  if(!re.test(frm.value) && frm.value!="")
	  {
         alert(str);
		 frm.select();
		 return false;
	  }else
	  {
         return true;
	  }
}
//检查电话号码
function chectelphone(frm,str)
{
  re=/^\d{3}-{0,1}\d{7,8}$/
  if(!re.test(frm.value) && frm.value!="")
	{
      alert(str)
	  frm.select()
	  return false;
	}else
	{
      return true;
	}
}
//检查手机号码
function checmobilephone(frm,str)
{
  re=/^0{0,1}13[0-9]{9}$/
  re1=/^106\d{11,12}$/
  if(!(re.test(frm.value)||re1.test(frm.value)) && frm.value!="")
	{
      alert(str)
	  frm.select()
	  return false;
	}else
	{
      return true;
	}
}
//检查电子邮件
function checemail(frm,str)
{
   re=/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/
   if(!re.test(frm.value) && frm.value!="")
	{
      alert(str)
      frm.select()
	  return false
	}else
	{
      return true
	}
}

//身份证检测函数
String.prototype.isIDCard = function()
{
	var iSum=0;
	var info="";
	var sId = this;
	var aCity={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"};

	if(!/^\d{14,17}(\d|x)$/i.test(sId))
	{
		return false;
	}
	sId=sId.replace(/x$/i,"a");
	//非法地区
	if(aCity[parseInt(sId.substr(0,2))]==null)
	{
		return false;
	}
	if(sId.length==15){
		var sBirthday="19"+sId.substr(6,2)*1+"-"+Number(sId.substr(8,2))*1+"-"+Number(sId.substr(10,2))*1;
	}else{
		var sBirthday=sId.substr(6,4)*1+"-"+Number(sId.substr(10,2))*1+"-"+Number(sId.substr(12,2))*1;
	}
	var d=new Date(sBirthday.replace(/-/g,"/"))
	//非法生日
	if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate()))
	{
		return false;
	}
	return true;
}
//检查身份证
function checidcard(frm,str)
{
  if(!frm.value.isIDCard()){
  	alert(str);
	}else{
		return true
	}
}

//检查邮编
function checpost(frm,str)
{
  re=/^\d{6}$/
  if(!re.test(frm.value))
	{
      alert(str)
	  frm.select()
	  return false
  	}else
    {
      return true
	}
}
//文件名检查,mode的格式应为:html|htm|word|xls等
function checfilename(frm,str,mode)
{
  if(frm.value!="")
	{
	  re="/^"+mode+"$/"
	  var checstr=frm.value;
	  var checarray=checstr.split(".");//分离文件名,取文件后缀名
	  var checmode=mode.split("|");//取检验对象
	  var checbool=false;
	  for(var i=0;i<checmode.length;i++)
		{
            if(checarray[checarray.length-1].toUpperCase()==checmode[i].toUpperCase())
			{
              checbool=true
			}
		}
	  if(checbool==false)
		{
           alert(str);
		   frm.select();
		   return false
		}
	  else
	    {
           return true;
		}
	}
  else
	{
      return true
	}
}
//检查字符串长度
function checlen(frm,str,len)
{
  if(frm.value!=""&&frm.value.length<len)
  {
      alert(str)
      frm.select()
      return false
  }else
  {
      return true
  }
}
//检查密码是否一致
function checpass(frm,str,frm1)
{
  if(frm.value!=frm1.value)
  {
      alert(str)
      frm.value=frm1.value=""
      frm1.select()
      return false
  }else
  {
      return true
  }
}
//检查是否为日期
function checdate(frm,str)
{
    if(frm.value=="") return true
    var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/;
    result = frm.value.match(reg);
    if(result == null)
    {
      alert(str);
      return false
    }
    var d = new Date(result[1],result[3]-1,result[4])

    if(result[1]*1+result[2]+result[3]*1+result[2]+result[4]*1!=d.getFullYear()+result[2]+(d.getMonth()+1)+result[2]+d.getDate())
    {
      alert(str);
      return false
    }
    return true
}

//表单自动验证函数(text,password,select)
function checknull(form)
{
	var INPUT;//保存现在访问的表单元件
	var i=0;
	for(i=0;i<form.elements.length;i++)
	{
		
		//alert(i);
		INPUT=form.elements[i];
		if(INPUT.type!="submit" &&
		   INPUT.type!="button" &&
		   INPUT.type!="reset" &&
		   INPUT.type!="hidden" &&
		   INPUT.type!="radio" &&
		   INPUT.type!="checkbox")
		{
			if (INPUT.check_null && !checnull(INPUT,INPUT.check_null)) return false;//是否为空
			if (INPUT.check_number && !checnumber(INPUT,INPUT.check_number)) return false;//是否为数字
			if (INPUT.check_int && !checint(INPUT,INPUT.check_int)) return false;//是否为整数
			if (INPUT.check_plusint && !checplusint(INPUT,INPUT.check_plusint)) return false;//是否为正整数
			if (INPUT.check_telphone && !chectelphone(INPUT,INPUT.check_telphone)) return false;//是否为电话号码
			if (INPUT.check_mobilephone && !checmobilephone(INPUT,INPUT.check_mobilephone)) return false;//是否为手机号码
			if (INPUT.check_email && !checemail(INPUT,INPUT.check_email)) return false;//是否为电子邮件
			if (INPUT.check_idcard && !checidcard(INPUT,INPUT.check_idcard)) return false;//是否为身份证
			if (INPUT.check_post && !checpost(INPUT,INPUT.check_post)) return false;//是否为邮编
			if (INPUT.check_filename && INPUT.sufname && !checfilename(INPUT,INPUT.check_filename,INPUT.sufname)) return false;//文件名检查
			if (INPUT.check_len && !checlen(INPUT,INPUT.check_len,INPUT.len)) return false;//检查字符串长度
			if (INPUT.check_pass && INPUT.pass && !eval('checpass(INPUT,INPUT.check_pass,INPUT.form.'+INPUT.pass+')')) return false;//检查密码是否一致
			if (INPUT.check_date && !checdate(INPUT,INPUT.check_date)) return false;//是否为日期
		}
	}
	return true;
} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -