<!--byzjg
//文件使用说明：
//1。转换变量
//函数1：trimall(data) {};
//    删除变量中的左右空格符；
//2。字符变量的检测
//函数2：checkstring(name, data, allowednull, maxlength) {}；
//       name:变量的描述；
//       date:变量的值
//       allowednull:检测的方式，true:变量可以为空;false:变量不可以为空;
//       maxlength：变量得最大长度，中文为1个字符；
//函数3：checkgbk(name, data, allowednull, maxlength) {}；
//       name:变量的描述；
//       date:变量的值
//       allowednull:检测的方式，true:变量可以为空;false:变量不可以为空;
//       maxlength：变量得最大长度，中文为2个字符；
//3。邮件的检测
//函数4：checkemail(name, data, allowednull) {};
//      name:变量的描述；
//       date:变量的值
//       allowednull:检测的方式，true:变量可以为空;false:变量不可以为空;
//4。数字的检测
//函数5：checknumber(name, data, allowednull, minnumber, maxnumber) {};
//       name:变量的描述；
//       date:变量的值；
//       allowednull:检测的方式，true:变量可以为空;false:变量不可以为空;
//       minnumber：变量的最小值；
//       maxnumber：变量得最大值；
//5。金额的检测
//函数6：checkJE(name, data, allowednull, minnumber, maxnumber) {};
//       name:变量的描述；
//       date:变量的值；
//       allowednull:检测的方式，true:变量可以为空;false:变量不可以为空;
//       minnumber：变量的最小值；
//       maxnumber：变量得最大值；
//6。百分数的检测
//函数7：checkPercent(name, data, allowednull) {};
//       name:变量的描述；
//       date:变量的值；
//       allowednull:检测的方式，true:变量可以为空;false:变量不可以为空;
//7。时间的检测
//函数8：checkdate(name, data, allowednull, mindate) {};
//       name:变量的描述；
//       date:变量的值
//       allowednull:检测的方式，true:变量可以为空;false:变量不可以为空;
//函数9：checkdatev(name, data, allowednull, mindate) {};
//       name:变量的描述；
//       date:变量的值
//       allowednull:检测的方式，true:变量可以为空;false:变量不可以为空;
//       mindate:变量的最少值；
//8。电话和手机，
//函数10：checkphone(name, data, allowednull, maxlength)
//       name:变量的描述；
//       date:变量的值
//       allowednull:检测的方式，true:变量可以为空;false:变量不可以为空;
//       mindate:变量的最少值；
//函数10：checkmobile(name, data, allowednull, maxlength)
//       name:变量的描述；
//       date:变量的值
//       allowednull:检测的方式，true:变量可以为空;false:变量不可以为空;
//       mindate:变量的最少值；
//
//一个普通检测字符所以某个字符集的方法如：数字，字母等
//var validDigit="填写字符集的内容";
//var x;变量
//  for (var i = 0; i <x.value.length; i++)
//{
//if (validDigit.indexOf(x.value.charAt(i)) == - 1)
//{ window.alert ("提示说明");
//   x.focus();
//   return false;
//}
// }
//-->
var validAlpha="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
var validDigit="0123456789";
var validJE="0123456789.";
var validTelephone="0123456789-";
function trimall(data)
{
	var datastr=data;
	var leftspace=datastr.search(/\S/gi);
	if(leftspace>0)
	{
		datastr=datastr.substr(leftspace);
	}
	leftspace=datastr.search(/\s/gi);
	var rightspace=0;
	var endspace=0;
	var leftstr=datastr;
	while(leftspace!=-1) {
		rightspace=rightspace+leftspace;
		leftstr=leftstr.substr(leftspace);
		leftspace=leftstr.search(/\S/gi);
		if(leftspace!=-1) {
			rightspace=rightspace+leftspace;
			leftstr=leftstr.substr(leftspace);
			leftspace=leftstr.search(/\s/gi);
			endspace=0;
		}else {
			endspace=1;
		}
	}
	if((endspace!=0)&&(rightspace>0)) {
		datastr=datastr.substring(0,rightspace);
	}
	return datastr;
}
function checkstring(name,data,allowednull,maxlength)
{
	var datastr=data;
	var lefttrim=datastr.search(/\S/gi);
	if(lefttrim==-1) {
		if(allowednull) {
			return 1;
		}else {
			alert(""+name+"：不能为空");
			return -2;
		}
	}
	if(datastr.search(/[<>]/gi)!=-1) {
		alert(""+name+"：包含非法字符<>");
		return -1;
	}
	datastr=trimall(datastr);
	if((maxlength>0)&&(datastr.length>maxlength)) {
		alert(""+name+"：长度超过限制");
		return -3;
	}
	return 0;
}
function checkgbk(name,data,allowednull,maxlength)
{
	var datastr=data;
	var lefttrim=datastr.search(/\S/gi);
	if(lefttrim==-1) {
		if(allowednull) {
			return 1;
		}else {
			alert(""+name+"：不能为空");
			return -2;
		}
	}
	if(datastr.search(/[<>]/gi)!=-1) {
		alert(""+name+"：包含非法字符<>");
		return -1;
	}
	datastr=trimall(datastr);
	var len=datastr.replace(/[^\x00-\xff]/g,'**').length;
	if((maxlength>=0)&&(len>maxlength)) {
		alert(""+name+"：长度超过限制");
		return -3;
	}
	return 0;
}
function checkemail(name,data,allowednull)
{
	var datastr=data;
	var lefttrim=datastr.search(/\S/gi);
	if(lefttrim==-1) {
		if(allowednull) {
			return 1;
		}else {
			alert(""+name+"：输入一个正确的email，不要包含无效字符");
			return -1;
		}
	}
	datastr=trimall(datastr);
	var myRegExp=/[a-z0-9](([a-z0-9]|[_\-\.]([a-z0-9])*)*)@([a-z0-9]([a-z0-9]|[_\-][a-z0-9])*)((\.[a-z0-9]([a-z0-9]|[_\-][a-z0-9])*)*)/gi;
	var answerind=datastr.search(myRegExp);
	var answerarr=datastr.match(myRegExp);
	if(answerind==0&&answerarr[0].length==datastr.length)
	{
		return 0;
	}
	alert(""+name+"：输入一个正确的email，不要包含无效字符");
	return -1;
}
function checknumber(name,data,allowednull,minnumber,maxnumber)
{
	var datastr=data;
	var lefttrim=datastr.search(/\S/gi);
	if(lefttrim==-1) {
		if(allowednull) {
			return 1;
		}else {
			alert(""+name+"：输入一个正确的数字");
			return -1;
		}
	}
	datastr=trimall(datastr);
	if(datastr.search(/\D/gi)!=-1) {
		alert(""+name+"：输入一个正确的数字");
		return -1;
	}
	var aNum=parseInt(datastr,10);
	if((minnumber>=0)&&(aNum<minnumber)) {
		alert(""+name+"：超过下限("+minnumber+")");
		return -2;
	}
	if((maxnumber>=0)&&(aNum>maxnumber)) {
		alert(""+name+"：超过上限("+maxnumber+")");
		return -3;
	}
	return 0;
}
function checkJE(name,data,allowednull,minnumber,maxnumber)
{
	var datastr=data;
	if(allowednull&&datastr==null)return -1;
	//如果该字段为不可空字段同时用户没填写则退出
	var lefttrim=datastr.search(/\S/gi);
	if(lefttrim==-1) {
		if(allowednull) {
			return 1;
		}else {
			alert(""+name+"：输入正确的数字和.");
			return -1;
		}
	}
	datastr=trimall(datastr);
	if(datastr.search(/\D/gi)!=-1) {
		for(var i=0;i<datastr.length;i++)
		{
			if(validJE.indexOf(datastr.charAt(i))==-1)
			{
				alert(""+name+"：输入正确的数字和.");
				return -1;
			}
		}
	}
	var aNum=parseInt(datastr,10);
	if((minnumber>=0)&&(aNum<minnumber)) {
		alert(""+name+"：超过下限("+minnumber+")");
		return -2;
	}
	if((maxnumber>=0)&&(aNum>=maxnumber)) {
		alert(""+name+"：超过上限("+maxnumber+")");
		return -3;
	}
	return 0;
}
function checkPercent(name,data,allowednull)
{
	var datastr=data;
	var lefttrim=datastr.search(/\S/gi);
	if(allowednull&&datastr==null)return -1;
	//如果该字段为不可空字段同时用户没填写则退出
	if(lefttrim==-1) {
		if(allowednull) {
			return 1;
		}else {
			alert(""+name+"：输入一个正确的百分比（只需输入数字）");
			return -1;
		}
	}
	datastr=trimall(datastr);
	if(datastr.search(/\D/gi)!=-1) {
		alert(""+name+"：输入一个正确的百分比（只需输入数字）");
		return -1;
	}
	var aNum=parseInt(datastr,10);
	if(aNum<0) {
		alert(""+name+"：超过下限(0)");
		return -2;
	}
	if((aNum>100)) {
		alert(""+name+"：超过上限(100)");
		return -3;
	}
	return 0;
}
function checkdatev(name,data,allowednull,mindate)
{
	var datastr=data;
	var lefttrim=datastr.search(/\S/gi);
	if(lefttrim==-1) {
		if(allowednull) {
			return 1;
		}else {
			alert(""+name+"：输入一个正确的日期,格式为2002-08-12或2002-8-12");
			return -1;
		}
	}
	datastr=trimall(datastr);
	datastr=datastr.replace(/-|\./gi,"/")
	if(datastr.search(/[^0-9/\s]/gi)!=-1) {
		alert(""+name+"：日期中包含非法字符,格式为2002-08-12或2002-8-12");
		return -1;
	}
	var year,month,day;
	var myRegExp=/[/]/gi;
	var answerind=-1;
	answerind=datastr.search(myRegExp);
	if(answerind<=0) {
		alert(""+name+"：输入一个正确的日期,格式为2002-08-12或2002-8-12");
		return -1;
	}
	year=parseInt(datastr.substring(0,answerind),10);
	if((year<1910)||(year>2100)) {
		alert(""+name+"：年份的范围在1910-2100内");
		return -1;
	}
	if(datastr.length<=answerind+1) {
		alert(""+name+"：输入一个正确的日期,格式为2002-08-12或2002-8-12");
		return -1;
	}
	datastr=datastr.substr(answerind+1);
	answerind=datastr.search(myRegExp);
	if(answerind<=0) {
		alert(""+name+"：输入一个正确的日期,格式为2002-08-12或2002-8-12");
		return -1;
	}
	month=parseInt(datastr.substring(0,answerind),10);
	if((month==0)||(month>12)) {
		alert(month);
		alert(datastr.substring(0,answerind));
		alert(""+name+"：月份的范围在1-12内");
		return -1;
	}
	if(datastr.length<=answerind+1) {
		alert(""+name+"：输入一个正确的日期,格式为2002-08-12或2002-8-12");
		return -1;
	}
	datastr=datastr.substr(answerind+1);
	answerind=datastr.search(myRegExp);
	if(answerind!=-1) {
		alert(""+name+"：输入一个正确的日期,格式为2002-08-12或2002-8-12");
		return -1;
	}
	day=parseInt(datastr,10);
	var maxday;
	switch(month) {
		case 1:
		case 3:
		case 5:
		case 7:
		case 8:
		case 10:
		case 12:
		maxday=31;
		break;
		case 4:
		case 6:
		case 9:
		case 11:
		maxday=30;
		break;
		default:
		maxday=28;
		if(year%4==0) {
			if(year%100==0) {
				if(year%400==0) {
					maxday=29;
				}
			}else {
				maxday=29;
			}
		}
	}
	if((day==0)||(day>maxday)) {
		alert(""+name+"：天数的范围在1-"+maxday+"内");
		return -1;
	}
	var m1=mindate;
	if(m1!="") {
		m1=m1.replace(/-|\./gi,"/")
		if(Date.parse(m1)>Date.parse(""+year+"/"+month+"/"+day)) {
			alert(""+name+"：输入的日期小于"+m1);
			return -2;
		}
	}
	return 0;
}
function checkdate(name,data,allowednull)
{
	var datastr=data;
	var lefttrim=datastr.search(/\S/gi);
	if(allowednull&&datastr==null)return -1;
	//如果该字段为不可空字段同时用户没填写则退出
	if(lefttrim==-1) {
		if(allowednull) {
			return 1;
		}else {
			alert(""+name+"：输入一个正确的日期,格式为2002-08-12或2002-8-12");
			return -1;
		}
	}
	datastr=trimall(datastr);
	datastr=datastr.replace(/-|\./gi,"/")
	if(datastr.search(/[^0-9/\s]/gi)!=-1) {
		alert(""+name+"：日期中包含非法字符,格式为2002-08-12或2002-8-12");
		return -1;
	}
	var year,month,day;
	var myRegExp=/[/]/gi;
	var answerind=-1;
	answerind=datastr.search(myRegExp);
	if(answerind<=0) {
		alert(""+name+"：输入一个正确的日期,格式为2002-08-12或2002-8-12");
		return -1;
	}
	year=parseInt(datastr.substring(0,answerind),10);
	if((year<1910)||(year>2100)) {
		alert(""+name+"：年份的范围在1910-2100内");
		return -1;
	}
	if(datastr.length<=answerind+1) {
		alert(""+name+"：输入一个正确的日期,格式为2002-08-12或2002-8-12");
		return -1;
	}
	datastr=datastr.substr(answerind+1);
	answerind=datastr.search(myRegExp);
	if(answerind<=0) {
		alert(""+name+"：输入一个正确的日期,格式为2002-08-12或2002-8-12");
		return -1;
	}
	month=parseInt(datastr.substring(0,answerind),10);
	if((month==0)||(month>12)) {
		alert(month);
		alert(datastr.substring(0,answerind));
		alert(""+name+"：月份的范围在1-12内");
		return -1;
	}
	if(datastr.length<=answerind+1) {
		alert(""+name+"：输入一个正确的日期,格式为2002-08-12或2002-8-12");
		return -1;
	}
	datastr=datastr.substr(answerind+1);
	answerind=datastr.search(myRegExp);
	if(answerind!=-1) {
		alert(""+name+"：输入一个正确的日期,格式为2002-08-12或2002-8-12");
		return -1;
	}
	day=parseInt(datastr,10);
	var maxday;
	switch(month) {
		case 1:
		case 3:
		case 5:
		case 7:
		case 8:
		case 10:
		case 12:
		maxday=31;
		break;
		case 4:
		case 6:
		case 9:
		case 11:
		maxday=30;
		break;
		default:
		maxday=28;
		if(year%4==0) {
			if(year%100==0) {
				if(year%400==0) {
					maxday=29;
				}
			}else {
				maxday=29;
			}
		}
	}
	if((day==0)||(day>maxday)) {
		alert(""+name+"：天数的范围在1-"+maxday+"内");
		return -1;
	}
	return 0;
}
function checkphone(name,data,allowednull,maxlength)
{
	var datastr=data;
	var lefttrim=datastr.search(/\S/gi);
	if(allowednull&&datastr==null)return -1;
	//如果该字段为不可空字段同时用户没填写则退出
	if(lefttrim==-1) {
		if(allowednull) {
			return 1;
		}else {
			alert(""+name+"：不能为空");
			return -2;
		}
	}
	if(datastr.search(/[<>]/gi)!=-1) {
		alert(""+name+"：包含非法字符<>");
		return -1;
	}
	datastr=trimall(datastr);
	for(var i=0;i<datastr.length;i++)
	{
		if(validTelephone.indexOf(datastr.charAt(i))==-1)
		{
			alert("号码必须为数字和- ");
			return -1;
		}
	}
	if((maxlength>0)&&(datastr.length>maxlength)) {
		alert(""+name+"：长度超过限制");
		return -3;
	}
	return 0;
}
function checkmobile(name,data,allowednull,maxlength)
{
	var datastr=data;
	var lefttrim=datastr.search(/\S/gi);
	if(allowednull&&datastr==null)return -1;
	//如果该字段为不可空字段同时用户没填写则退出
	if(lefttrim==-1) {
		if(allowednull) {
			return 1;
		}else {
			alert(""+name+"：不能为空");
			return -2;
		}
	}
	if(datastr.search(/[<>]/gi)!=-1) {
		alert(""+name+"：包含非法字符<>");
		return -1;
	}
	datastr=trimall(datastr);
	for(var i=0;i<datastr.length;i++)
	{
		if(validTelephone.indexOf(datastr.charAt(i))==-1)
		{
			alert("手机必须为数字和-");
			return -1;
		}
	}
	if((maxlength>0)&&(datastr.length>maxlength)) {
		alert(""+name+"：长度超过限制");
		return -3;
	}
	return 0;
}
