/************************************************

// validate.js 数据检测库

此对象提供常用的客户端校验和处理功能,支持的方法简述如下：
checkDatePeriod(period,flag)－－限制 期限 不能大于100年，返回true/false
dateFormat(str)－－将日期格式由yyyy-MM-dd，转换为yyyymmdd，以直接比较两个日期的大小，返回处理后的日期串
fillZero(str)－－为1位的日月在前面补零，如将1变为01，返回处理后的字符串
trimZero(str)－－对于月和日，如果前面有零，去除，如01变为1
isNumber(controller,message)－－判断字符串是否全部由数字组成，返回true/false
isLetter(controller,message) — — 判断字符串是否全部由字母组成，返回true/false

delConfirm(form)－－删除确认
checkEmail(controller)－－检查email格式，返回true/false
checkNotnull(controller,message)－－对输入框的内容进行非空检验，如果为空，弹出提示信息，返回true/false
checkNumber(controller,len,message)－－检验控件值是否是固定位数的有效数字，返回true/false
checkLetter(controller,len,message) — — 校验控件值是否是限定位数的有效字母，返回true/false
quoteFilter()— — 过滤掉字符串中的"'"、"%"、"&"、"/"、"\"
trim(str)－－删去字符串两端的空格
strLong(str) －－判断字符串的长度，返回字符串的长度
checkUserId(controller)－－判断用户编号的有效性（为六位字符），返回true/false
checkUserPasswd(controller)－－判断用户口令是否符合要求，返回true/false
setClear() — — 清空查询条件
checkPrice()：   价格输入是否合法（99,999.00）
checkHph(controller,message) — — 判断输入的货票号是否是1位字母+6位数字，返回true/false
checkHphSeq(qsController,jzController) — — 检验起始货票号必须小于截至货票号
checkConditionNotNull() - -检验查询条件是否为空,返回true/false
checkNumberLeastLen(controller,leastLen,message)- -检验控件值是否是最短位数的有效数字，返回true/false
isTel(controller)：   电话号码校验(只能为下划线—、（）、或数字)
phoneCheck(controller,msg) controller控件名称，msg控件Lable（座机、手机）电话号码校验(只能为横线—、（）、或数字)及位数的限制
getCNTxtLength(controller) －－判断字符串的长度，返回字符串的长度
checkDecimalNumber(controller,message,befor,after) 判断货币型的数据是否合法，befor整数位大小，after小数位大小
checkSubmit() 避免多次提交页面 在jsp中嵌入该文件，在每个jsp页面的提交语句前执行该方法
checkNumber(controller,message)  检测输入是否为正整数数字
checkWww() 判断网址是否以http://开头
checkEmailAll(controller)  检查EMail格式
*************************************************/


//han_feng 2003.11

//包含标志
var	_INCLUDE_VALIDATE_JS = "YES";

//////////////////// 常用校验方法 //////////////////
//全是数字
function isNumber(nStr){
	var re=/\D/g;	//非数字的正则表达式
	return !re.test(nStr);
}

//操作员口令校验，3-12位数字或字母
function isPassword(nStr){
	return ((nStr.length>=3) && (nStr.length<=12));
}

//操作员编号校验，7位数字
function isOperId(sId){
	return (isNumber(sId) && (sId.length==7));
}


/**
 *功能：	限制 期限 不能大于100年
 *@param	period	期限
 *@param	flag	期限单位
 *@return   true 通过检查; false 未通过检查
 */
function checkDatePeriod(period,flag){
	var ret=true;
	if(flag=="0"){
		if(period>100)
			ret= false;
	}
	else if(flag=="1"){
		if(period >100 * 12)
			ret= false;
	}
	else if(flag=="2"){
		if(period >100 * 12 * 365)
			ret= false;
	}
	return ret;
}



/************************************************
function:	dateFormat
purpose:	将日期格式由yyyy-MM-dd，转换为yyyymmdd，以直接比较两个日期的大小
parameters :	需要进行转换的日期串
return value :  处理后的日期串
*************************************************/
function dateFormat(str)
{
  var yy="",mm="",dd="";
  m=0;
  j=0;
  for (i=0;i<=str.length;i++){
    if(str.charAt(i)=="-" || i==str.length){
      m++;
      if(m==1)
         yy=str.substring(j,i);
      if(m==2)
         mm=str.substring(j,i);
      if(m==3)
         dd=str.substring(j,i);

      j=i+1;
    }
  }
  if (mm!="")
    mm=fillZero(mm);
  if (dd!="")
    dd=fillZero(dd);

  date = yy + mm +dd;
  return (date);

}

/************************************************
function:	isNumber
purpose:	判断字符串是否全部由数字组成
parameters :	需要进行判断的字符串
return value :  true/false
*************************************************/
function isNumber(controller,message){
	var value=controller.value;
	if(value.length!=0){
		for (i=0;i<value.length;i++){
			if (value.charAt(i)>'9' || value.charAt(i)<'0'){
				alert(message+"为0-9的数字");
				controller.focus();
				return false;
			}
		}
		return true;
	}
	else return true;
}
/************************************************
function:  isLetter
purpose:   判断字符串是否全部由字母组成
parameters:需要进行判断的字符串
return value:  true/false
************************************************/
function isLetter(controller,message){
	var value=controller.value;
	if(value.length!=0){
		for(i=0;i<value.length;i++){
			if((!(value.charAt(i)>="a" && value.charAt(i)<="z")) && (!(value.charAt(i)<="Z" && value.charAt(i)>="A"))){
				alert(message+"为A-Z或a-z的字母");
	 			controller.focus();
				return false;
			}
			else return true;
		}		
	}
	else return true;
}

/************************************************
function:	trimZero
purpose:	对于月和日，如果前面有零，去除，如01变为1
parameters :	需要进行处理的字符串
return value :  处理后的字符串
*************************************************/
function trimZero(str)
{
  var i,j,result="";
  j = str.length;
  for (i=0;i<j;i++)
	if ( str.charAt(i)!='0' ) break;
  result = str.substring(i,j);
  return result;
}
//判断是否是数字
function isNum(str){
	var sl = 0;
	if(str.length>0)
	{
	         if ((str.charAt(0)<'0' || str.charAt(0)>'9') && str.charAt(0)!='.'&& str.charAt(0)!='-')
       		 return false;
	}
	if(str.length>=1)
	{
   		for (var i=0;i<str.length;i++)
    	{
		if ((str.charAt(i)<'0' || str.charAt(i)>'9') && str.charAt(i)!='.')
		return false;
		if (str.charAt(i) == ".")
		{
			sl = sl + 1;
		}
		}
		if (sl > 1)
		{
			return false;
		}
		
		if (str.charAt(str.length-1) == ".")
		{
			return false;
		}
		if (str == ".")
		{
			return false;
		}
 	}
  	return true;
}


/************************************************
function:	fillZero
purpose:	为1位的日月在前面补零，如将1变为01
parameters :	需要进行处理的字符串
return value :  处理后的字符串
*************************************************/
function fillZero(str)
{
  var i,j,result="";
  j = str.length;
  if (j==1)
    result = "0" + str;
  else
    result = str;
  return result;
}

/************************************
function:		delConfirm()
purpose:	在删除按钮的onclick事件触发
parameters :	提交的表单名称
************************************/
function delConfirm(form){
	if (confirm("确定要删除吗？"))
	form.submit();
}


/************************************
function:		checkEmail()
purpose:	检查EMail格式
parameters :	控件名称
return value :	true/false.
************************************/
function checkEmail(controller)
{
	var strEmail=controller.value;
	var strE="@";
	var strI=".";
	var iPos;
	var iLen;
	var iT=0;
	var strT="";
	if (strEmail.length!=0){
		strT=strEmail;
		do
		{
			iPos=strT.indexOf(strE);
			iLen=strT.length;
			if (iPos==-1)
			{
				if(iT==0)
				{	alert("邮件地址不正确");
					return false;
				}
				else
				{
					break;
				}
			}
			else
			{
				if ((iPos==0)||(iPos==(iLen -1)))
				{	alert("邮件地址不正确");
					return false;
				}
				else
				{
					strT=strT.substring(iPos+1);
				}
				iT++;
			}
		}
	while(strT !="")
	if (iT !=1)
	{	alert("邮件地址不正确");
		return false;
	}
	
	strT=strEmail.substring(iPos+1,1);
	if (strT==".")
	{	alert("邮件地址不正确");
		return false;
	}
	
	iT=0;
	iPos=strEmail.indexOf(strE);
	strT=strEmail.substring(iPos+1);
	do
	{
		iPos=strT.indexOf(strI);
		iLen=strT.length;
		if (iPos== -1)
		{
			break;
		}
		else
		{
			if((iPos==0)||(iPos==(iLen -1)))
			{	alert("邮件地址不正确");
				return false;
			}
			else
			{
				strT=strT.substring(iPos+1);
			}
			iT++;
		}
	}
	while(strT !="")
	
	iPos=strEmail.indexOf(strE);
	strT=strEmail.substring(0,iPos);
	iPos=strT.indexOf(strI);
	if(iPos != -1)
	{	alert("邮件地址不正确");
		return false;
	}
}
	return true;
}





/************************************
function:	checkNotnull()
purpose:	对输入控件的内容进行非空检验，如果为空，弹出提示信息
parameters :	控件名称，提示信息
return value :	true/false.
************************************/
function checkNotnull(controller,message){
	var value=trim(controller.value);
	if  (value.length==0){
		alert(message+"不能为空！");
		controller.focus();
		return false;
	}
	return true;

}


/************************************
function:	checkNumber()
purpose:	检验控件值是否是固定位数的有效数字
parameters :	控件名称，提示信息
return value :	true/false.
************************************/
function checkNumber(controller,len,message){
	var value=controller.value;
	var count=0;
	if (value.length!=0){
		for (var i=0;i<value.length;i++){
			if (value.charAt(i)>"9" || value.charAt(i)<"0"){
				alert(message + "为0-9的数字");
				controller.focus();
				return false;
			}
		}
		if (value.length > 10){
			alert(message+"的数字太大，请检查!");
			controller.focus();
			return false;
		}
		else if ( value.length == 10){
			if (value > "2147483647"){
				alert(message+"的数字太大，请检查!");
				controller.focus();
				return false;
			}
		}
	}
	if(value.length>len||(value.length<len&&value!="")){
		alert(message+"应为"+len+"位");
		return false;
	}
	else return true;
}

/*  */
function checkNum(controller)
{
	var value=controller.value;
        var count=0;
	if (value.length!=0){
	  for (var i=0;i<value.length;i++){
		if (value.charAt(i)>"9" || value.charAt(i)<"0")
			return(false);
	  }
	  }
	  return(true);
}

function checkNumN(Num)
{
	var value=trim(Num);
        var count=0;
	if (value.length!=0){
	  for (var i=0;i<value.length;i++){
		if (value.charAt(i)>"9" || value.charAt(i)<"0")
			return(false);
	  }
	  }
	  return(true);
}

/************************************
Method:		checkLetter()
purpose:	 所输内容应为字母
parameters :	控件名称，提示信息
return value :	true/false.
测试页面：  test1.jsp			
************************************/
function checkLetter(controller,len,message){
	var value=controller.value;
	if (value.length!=0){
		for (var i=0;i<value.length;i++){
            if((!(value.charAt(i)>="a" && value.charAt(i)<="z")) && (!(value.charAt(i)<="Z" && value.charAt(i)>="A"))){
				alert(message+"为A-Z或a-z的字母");
	 			controller.focus();
				return false;
			}
		}
	}
/**********liu_qchao add 2004-9-21**********/
	if(value.length>len){
		alert(message+"应小于等于"+len+"位！");
		return false;
	}
/******************************************/
	var upValue = value.toUpperCase();
    controller.value = upValue;
    return true;
}

/************************************
Method:		quoteFilter()
purpose:	 过滤掉"'"、"%"、"&"、"/"、"\"
parameters :	控件名称
************************************/
function quoteFilter(controller){
	var value=controller.value;
	if (value.length!=0)
   {
	  pos1 = value.indexOf("'");
	  pos2 = value.indexOf("%");
	  pos3 = value.indexOf("\\");
	  pos4 = value.indexOf("/");
	  pos5 = value.indexOf("&");
	  if(pos1>-1 || pos2>-1 || pos3>-1 || pos4>-1 || pos5>-1) 
	  {         
		 if(pos1>-1)
		 {	
		 	pos1 = value.indexOf("'");
		      value = value.substring(0,pos1) + value.substring(pos1+1,value.length);
		 }
	
		 if(pos2>-1)
		 {
		 	pos2 = value.indexOf("%");
		      value = value.substring(0,pos2) + value.substring(pos2+1,value.length);
		 }
		 if(pos3>-1)
		 {	
		 	pos3 = value.indexOf("\\");
		      value = value.substring(0,pos3) + value.substring(pos3+1,value.length);
		 }
		 if(pos4>-1)
		 {	
		 	pos4 = value.indexOf("/");
		      value = value.substring(0,pos4) + value.substring(pos4+1,value.length);
		 }
		 if(pos5>-1)
		 {
		 	pos5 = value.indexOf("&");
		      value = value.substring(0,pos5) + value.substring(pos5+1,value.length);
		 }
         controller.value = value;
         quoteFilter(controller);
	  }
   }
}
//删除字符串两侧的空格
function trim(str) 
{
 str = this != window? this : str;
 return str.replace(/^\s+/g, '').replace(/\s+$/g, '');
}

/************************************
function:		strLong()
purpose:	 取字符串长度(不包含两端的空格)
parameters :	字符串
return value :	int
************************************/
function strLong(str) 
{
 str = trim(str);
 return str.length();
}


/**/
function formatNumber(num,Fraction)
{
	num = num.toString().replace(/\$￥|\,/g,'');
	if(isNaN(num))//not a number
		num = "0";
	Fraction = Fraction.toString();
	if(isNaN(Fraction))
		Fraction="0";
	var nMulti=1;
	var nFraction = parseInt(Fraction,10)

	for(var i=0;i<nFraction;i++)
		nMulti = nMulti*10;
	num = Math.round(num*nMulti);
	cents = num%nMulti;
	num = Math.floor(num/nMulti).toString();
	
	//设置千分位
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
	num = num.substring(0,num.length-(4*i+3))+','+ 	num.substring(num.length-(4*i+3));

	//计算小数点后加多少“0”；
	var n = 0;
	var sum = cents;
	var zero="";
	if(cents ==0)
	{
		n = nFraction-1;
	}
	else
	{
		while(sum*10 < nMulti)
		{
			sum = sum*10;
			n++;
		}
	}
	for(var j=0;j<n;j++)
	{
		zero = zero +"0";
	}
	cents = zero + cents;
	if(nFraction > 0)
		num = num + '.' + cents;
	return num;
	
}

function amtTranBack(moneyStr){
	return parseFloat(moneyStr.replace(/,/g, ""));
}

//将金额转化成按千分位的显示格式
function amtTranShow(amtStr){
	var a,renum='';
	var j=0;
	var a1='',a2='',a3='';
	var tes=/^-/;
	if(event.keyCode>=33&&event.keyCode<=40) return;

	a=amtStr.replace(/,/g, "");
	a=a.replace(/[^-\.,0-9]/g,"");//删除无效字符
	a=a.replace(/(^\s*)|(\s*$)/g, "");//trim
	if(tes.test(a)) a1='-';
	else a1='';
	a=a.replace(/-/g,"");
	if(a!="0" && a.substr(0,2)!="0.")a=a.replace(/^0*/g, "");
	j=a.indexOf('.');
	if(j<0) j=a.length;
	a2=a.substr(0,j);
	a3=a.substr(j);
	j=0;
	for( i=a2.length;i>3;i=i-3){
		renum=","+a2.substr(i-3,3)+renum;
		j++;
	}
	renum=a1+a2.substr(0,a2.length-j*3)+renum+a3;
	return renum;
}

/************************************
Method:		setClear()
purpose:	清空查询条件
parameters: num 页面上的控件个数
************************************/
function setClear(){
	divColl = document.all.tags("input");        
	    for (i=0; i<divColl.length; i++) {  
	         
	         whichEl = divColl(i);
			 if (whichEl.type!="button")
			 {
				 whichEl.value = ""; 
			 }
	                
	    }    
	divColl = document.all.tags("select");        
	    for (i=0; i<divColl.length; i++) {       
	         whichEl = divColl(i);
			 if(whichEl.name!="pagesize"&&whichEl.name!="Pagelist")
				 whichEl.options[0].selected = true;        
	    } 
	
}
/************************************
Method:		checkPrice()
purpose:	 价格输入是否合法（99,999.00）
parameters :	控件名称，提示信息
return value :	true/false.
************************************/
function checkPrice(controller,message){
	var value=controller.value;
	var m=0;
	
	if (value.length!=0){
		for (var i=0;i<value.length;i++){
			if ((value.charAt(i)>"9" || value.charAt(i)<"0") && value.charAt(i)!="." && value.charAt(i)!=",") {
				alert(message + "用小数或整数表示！");
	 			controller.focus();
				return(false);
			}
			if (value.charAt(i)==".")
			{
				m++;
			}
			
		}
		if (m>1)
		{
           alert(message + "至多有一个小数点！");
	 	   controller.focus();
		   return(false);
		}
	}
	else controller.value="";
	return true;
	}

/************************************
Method:		checkHph()
purpose:	 检验货票号为1位字母+6位数字
parameters :	控件名称，提示信息
return value :	true/false.
************************************/
function checkHph(controller,message){
	var value=controller.value;
	if (value.length!=0 ){
	    if((!(value.charAt(0)>="a" && value.charAt(0)<="z")) && (!(value.charAt(0)<="Z" && value.charAt(0)>="A"))){
            alert(message+"的第一位应该为字母");
	        controller.focus();
	        return(false);
		}
	    for (var i=1;i<value.length;i++){
            if( value.charAt(i)>"9" || value.charAt(i)<"0"){
				alert(message+"的格式错误，正确的格式应为1位字母+6位数字");
	 			controller.focus();
				return(false);
			}
		}
	}
	upValue = value.toUpperCase();
    controller.value = upValue;
	return true;
}

/************************************
Method:		checkHphSeq()
purpose:	 检验起始货票号必须小于截至货票号
parameters :	
return value :	true/false.
************************************/
function checkHphSeq(qsController,jzController){
  var qshp=qsController.value;
  var jzhp=jzController.value;
  if (qshp.length==0 && jzhp.length!=0){
    var i = checkHph(jzController,"截止货票号");
	return i;
  }
  if (jzhp.length==0 && qshp.length!=0){
    var j = checkHph(qsController,"起始货票号");
	return j;
  }

if (qshp.length!=0 && jzhp.length!=0){
  if (!checkHph(qsController,"起始货票号"))
  	return false;
  if (!checkHph(jzController,"截止货票号"))
  	return false;

  if (checkHph(qsController,"起始货票号") && checkHph(jzController,"截止货票号")){
    if (qshp>jzhp){
      alert("起始货票号不能大于截止货票号！");
      return false;
    }
  }
}
  return true;
}
/************************************
Method:		checkConditionNotNull()
purpose:	 检验查询条件是否为空，为空则提示"查询条件不能为空！"
parameters :	
return value :	true/false.
************************************/
function checkConditionNotNull(){
	var notNull=false;
	divColl = document.all.tags("select"); 
	for (i=0; i<divColl.length; i++) {       
		 whichEl = divColl(i);   
		 if(whichEl.value.length!=0){
			 if(whichEl.id!="fsdwlx"&&whichEl.id!="dddwlx"&&whichEl.name!="pagesize"
			 &&whichEl.name!="Pagelist"&&whichEl.id!="zfdwlx"&&whichEl.id!="zddwlx"
			 &&whichEl.id!="xfdwlx"&&whichEl.id!="xddwlx"){
				 notNull=true;
				 break;
			 }
		 }  
	}
	if(notNull==false){
		divColl = document.all.tags("input"); 
			for (i=0; i<divColl.length; i++) {  
				 whichEl = divColl(i);
				 if (whichEl.type!="button"&& whichEl.type !="hidden"){
					 if(whichEl.value.length!==0){
						 notNull=true;
						 break;
					 }
				 }
			}    
	}
	if(notNull==true) return true;
	else {
		alert("查询条件不能为空！");
		return false;
	}
}
/************************************
Method:		checkNumberLeastLen(controller,leastLen,message)
purpose:	 检验是不是最短位数的数字,用于模糊查询
parameters : controller,leastLen,message
return value :	true/false.
************************************/
function checkNumberLeastLen(controller,leastLen,message){
	var value=controller.value;
	if (value.length!=0){
		for (var i=0;i<value.length;i++){
			if (value.charAt(i)>"9" || value.charAt(i)<"0"){
				alert(message + "为0-9的数字");
				controller.focus();
				return false;
			}
		}
		if (value.length >=10){
			alert(message+"的数字太大，请检查!");
			controller.focus();
			return false;
		}
	}
	if(value.length <leastLen&&value.length>0){
		alert(message+"至少应为"+leastLen+"位");
		controller.focus();
		return false;
	}
	else return true;
}

/************************************
Method:		isTel(controller)
purpose:	电话号码校验(只能为下划线—、（）、或数字)
测试页面：  test1.jsp
************************************/
function isTel(controller){
	var tel=controller.value;
	if (tel.length!=0){
	var validchars = "-()1234567890 ";
	for (i=0;i<tel.length;i++){
		telchar=tel.charAt(i);
		if (validchars.indexOf(telchar, 0) == -1){
			alert("请输入正确的电话号码格式！");
            controller.focus();
			return false;
		}
	}
	}
	return true;
}


/************************************
　　(1)电话号码由数字和－组成
　　(2)电话号码为7到13位
　　(3)13开头的头的手机号码必须为11位
************************************/
function phoneCheck(controller,msg) {
	var str=controller.value;
	var rst = str.substr(0,2);
	var re = /^[1][3]\d{9}$/;
	var reg = /^((\d{3,4}\-)?\d{7,8}(\-\d*)?)$/;
	if(str.length != 0){
	if((rst == 13)&&(str.length!=11)&&!re.test(str)){
		alert(msg+"号码格式错误，请输入正确的电话号码（手机）！");		
        controller.focus();
		return false;
	}else if((rst != 13)&&!reg.test(str)){
		alert(msg+"号码格式错误，请输入正确的电话号码！");
        controller.focus();
		return false;
	}
	}
	return true;
}
	
/************************************
function:		getCNTxtLength(controller)
purpose:	 取字符串长度(不包含两端的空格)
parameters :	字符串
return value :	int
************************************/
function getCNTxtLength(controller) {	
	var len;
	var i;
	len = 0;
	for (i = 0 ;i < controller.length; i++) {
		if (controller.charCodeAt(i) > 255) 
			len += 2; 
		else 
			len++;
	}		
	return len;
}

/************************************
Method:		checkDecimalNumber(controller,message,befor,after)
purpose:	 输入为Decimal格式的数，且小数点前后都不能超过规定的位数
parameters :	控件名称，提示信息，小数点前面的最大位数，小数点后面的最大位数
return value :	true/false.
************************************/
function checkDecimalNumber(controller,message,befor,after){
	var re=new RegExp("^((\\d{1," + befor + "}(\\.\\d{1," + after + "})?)||(\\.\\d{1," + after + "}))$");
	if(!re.test(controller.value)){
    		alert("提示:" + message + "输入错误必须为整数或小数,且整数位不得大于" + befor + "位" + "小数位不得大于" + after + "位!");
       		return false;
    	}else{
    		return true;
   	}
}
/************************************
Method:		checkNumber(controller,message)
purpose:	 检测输入是否为正整数数字，如果结果为非给出相应提示
parameters :	控件名称，提示信息
return value :	true/false.
condition:  controller:must;message:optional
************************************/
function checkNumber(controller,message)
{
	var value=controller.value;
        var count=0;
	if (value.length!=0)
        {
	  for (var i=0;i<value.length;i++)
          {
            if (value.charAt(i)>"9" || value.charAt(i)<"0")
            {
            	if(message!=null){
		alert(message+":为正整数的数字")
		}else{
			alert("为正整数的数字");
		}             
              controller.focus();
              return(false);
            }
	  }          
        }
        controller.value=value;
	return true;
}

/************************************
Method:		checkWww()
purpose:	 判断网址是否以http://开头
parameters :	控件名称
************************************/
function checkWww(controller,message){
	var value=controller.value;
	if(value.indexOf("//")>-1){
		if(value.substring(0,value.indexOf("//"))!="http:"){
			alert(message+"必须以http://格式开头");
			controller.focus();
			return false;
		}
	}else{
		alert(message+"必须以http://格式开头");
		controller.focus();
		return false;
	}
	return true;
}

/************************************
Method:		checkSubmit()
purpose:	避免多次提交页面 在jsp中嵌入该文件，在每个jsp页面的提交语句前执行该方法
************************************/
var requestSubmitted = false;
function checkSubmit()
{
	if(requestSubmitted == true)
	{
		alert("您已经提交了请求，请等待服务器的应答......");
        return false;
	}
	requestSubmitted = true;
	return true;
}

/**********************************************
function:		checkEmailAll()
purpose:	检查EMail格式
parameters :	控件名称
return value :	true/false.
**********************************************/
function checkEmailAll(controller){
		var strEmail=trim(controller.value);
		var strE="@";
		var strI=".";
		if(strEmail.indexOf(" ")>0){
		alert("邮件地址不正确");
		return false;
		}
		if(strEmail.indexOf(strE)==-1||strEmail.indexOf(strE)==0){
		alert("邮件地址不正确");
		return false;
		}
		if(strEmail.indexOf(strI)==-1){
		alert("邮件地址不正确");
		return false;
		}
	var count = 0;
	if (strEmail.length!=0){
			for (var i=0;i<strEmail.length;i++){
				if (strEmail.charAt(i)=="."){
					count++;
				}
			}
	}
	var sum = 0;
	if (strEmail.length!=0){
			for (var i=0;i<strEmail.length;i++){
				if (strEmail.charAt(i)=="@"){
					sum++;
				}
			}
	}
	if(sum>1){
			alert("邮件地址不正确");
		return false;
	}
	if(strEmail.indexOf(strE)>strEmail.indexOf(strI)){
		alert("邮件地址不正确");
		return false;
	}
	if(count>2){
				alert("邮件地址不正确");
		return false;
	}
	if(count==1){
		if((strEmail.indexOf(strI)-strEmail.indexOf(strE)<2)||(strEmail.indexOf(strI)==(strEmail.length-1))){
				alert("邮件地址不正确");
		return false;
		}
	
	}
	if(count==2){
		if(((strEmail.indexOf(strI)-strEmail.indexOf(strE)<2)||(strEmail.lastIndexOf(strI)-strEmail.indexOf(strI)<2))||(strEmail.lastIndexOf(strI)==(strEmail.length-1))){
				alert("邮件地址不正确");
		return false;
		}
	
	}
	
		return true;
}

