﻿//检查脚本，返回true表示没有脚本语言,非法或者有脚本 返回false
function checkScript(value)
{
	var checkOK = "<>";
	var allValid = true;

	//if (value == "") return false;

	for (i = 0;  i < value.length;  i++)
	{
		ch = value.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
		if (ch == checkOK.charAt(j))
		{
			allValid=false;
			break;
		}
	}
	if(value.indexOf("&lt")!= -1) return false;
	return allValid;
}
function checkChar(value)
{
  var checkErr = " '\"&?\n\r\t\\/";

  if (value == "") return true;

  for (i = 0;  i < value.length;  i++)
  {
	ch = value.charAt(i);
	for (j = 0;  j < checkErr.length;  j++)
	  if (ch == checkErr.charAt(j))
		return false;
  }
  return true;
}
////////////////////////////////////////////////////////
///以下是一些校验函数。。。。。。。。。。
/////////////////////////////////////////////////////////
function  validateNumeric( strValue ) {
  var objRegExp  =  /(^-?\d\d*\.\d*$)|(^-?\d\d*$)|(^-?\.\d\d*$)/;
  return objRegExp.test(strValue);
}

//验证数字
function validateInteger(strValue)
{
    var objRegExp = /^\d+$/;
    return objRegExp.test(strValue);
}

//验证数字和字符串的组合function validateUserName(strValue)
{
    var objRegExp = /^\w+$/;
    return objRegExp.test(strValue);
}

function validateName(strValue)
{
    var objRegExp = /^[a-zA-Z0-9\u4e00-\u9fa5]+$/;
    return objRegExp.test(strValue);
}

//验证身份证号码function validateCardNum(strValue)
{
    var objRegExp = /^(\d{15}|\d{18}|\d{17}[X|x])$/;
    return objRegExp.test(strValue);
}

function validateEmail( strValue) {
  var objRegExp  = /^[a-z0-9]([a-z0-9_\-\.]*)@([a-z0-9_\-\.]*)(\.[a-z]{2,4}(\.[a-z]{2}){0,2})$/i;
  return objRegExp.test(strValue);
}
//验证日期
function validateCNDate( strValue )
{
  var objRegExp = /^\d{4}(\-|\/|\.)\d{1,2}\1\d{1,2}$/;
  if(!objRegExp.test(strValue))
  {
    return false;
  }
  else
  {
		var arrayDate = strValue.split(RegExp.$1);
		var intDay = parseInt(arrayDate[2].replace(/^0/g,''),10);
		var intYear = parseInt(arrayDate[0],10);
		var intMonth = parseInt(arrayDate[1].replace(/^0/g,''),10);

		if(intMonth > 12 || intMonth < 1)
		{
			return false;
		}

		var arrayLookup = { '1' : 31,'3' : 31, '4' : 30,'5' : 31,'6' : 30,'7' : 31, '8' : 31,'9' : 30,'10' : 31,'11' : 30,'12' : 31};

		if(arrayLookup[intMonth] != null)
		{
		if(intDay <= arrayLookup[intMonth] && intDay != 0)
			return true;
		}

		if (intMonth-2 ==0)
		{
		var booLeapYear = (intYear % 4 == 0 && (intYear % 100 != 0 || intYear % 400 == 0));
		if( ((booLeapYear && intDay <= 29) || (!booLeapYear && intDay <=28)) && intDay !=0)
			return true;
		}
   }
}

function validatePositive( strValue ) {
	if (validateNumeric( strValue )) { if (strValue > 0) return true; else return false ; }
	return false;
}

function validateNogeative( strValue ) {
	if (validateNumeric( strValue )) { if (strValue >= 0) return true; else return false ; }
	return false;
}

function validateHundred( strValue ) {
    return NumberRange( strValue,0,100 );
}

function NumberRange( strValue,fMin,fMax ) {
	if (validateNumeric( strValue )) {if ((strValue >= fMin) && (strValue <= fMax)) return true; else return false};
	return false;
}


/*-----new script by v.-----*/
function addClass(ele,value) {
	if(!ele.className) {
		ele.className = value;
	} else {
		newClassName = ele.className;
		newClassName+= ' ';
		newClassName+= value;
		ele.className = newClassName;
	}
}
function removeClass(ele,value) {
	var cn = ele.className;
	if(!cn) {
		cn = '';
	}else {
		var oldClass = cn;
		var delClass = new RegExp('\\b'+value+'\\b');
		var newClass = new RegExp('(.*)\\b'+value+'\\b(.*)');
		if(delClass.test(oldClass)) {
			ele.className = oldClass.replace(newClass,"$1 $2");
		}
	}
}
function hasClass(ele,classname) {
	var cn = ele.className;
	var rgExp = new RegExp('\\b'+classname+'\\b');
	if(cn.search(rgExp) != -1) {
		return true;
	}else {
		return false;
	}
}
function insertAfter(newElement,targetElement) {
	var parent = targetElement.parentNode;
	if (parent.lastChild == targetElement) {
		parent.appendChild(newElement);
	} else {
		parent.insertBefore(newElement,targetElement.nextSibling);
	}
}
function isIE(){ //判断是否IE浏览器
	if (window.navigator.userAgent.toLowerCase().indexOf("msie")>=1){return true;}
	else{return false;}
}
if(!isIE()){
	/*-----  innerText  -----*/
	HTMLElement.prototype.__defineGetter__("innerText",
		function(){
			var anyString = "";
			var childS = this.childNodes;
			for(var i=0; i<childS.length; i++) {
				if(childS[i].nodeType==1)
				anyString += childS[i].tagName=="BR" ? '\n' : childS[i].innerText;
				else if(childS[i].nodeType==3)
				anyString += childS[i].nodeValue;
			}
			return anyString;
		}
	);
	HTMLElement.prototype.__defineSetter__("innerText",
		function(sText){this.textContent=sText;}
	);
	/*-----  addEvent  -----*/
	Object.prototype.attachEvent = function (e,fn) {
		this.addEventListener(e.substr(2),fn,false);
	}
	Object.prototype.detachEvent = function (e,fn) {
		return false; /*-----  ff里屏蔽  -----*/
	}
}

function ValidateForm() {
	var self = this;
	this.hasfocus = true; //验证失败焦点默认值
	this.hasSubmit = false; //是否按下过提交按钮

	this.require = []; //必填项
	this.userid = ''; //用户名
	this.pw = ''; //密码
	this.repw = ''; //重复密码
	this.name = ''; //真实姓名
	this.email = ''; //电子邮箱
	this.term = ''; //协议
	this.words = ''; //搜索关键字(禁止非法字符)
	this.compare = []; //比较大小的2个数字,多维数组,小数字第一个[0][0]大数字第二个[0][1]
	this.num = []; //数字
	this.floatnum = []; //小数点数字
	this.tel = []; //普通电话、传真
	this.mobile = []; //手机

	this.needText = '此项为必填项';

	if(typeof ValidateForm._initialized == 'undefined') {/*-----  定义方法  -----*/

		ValidateForm.prototype.focusthis = function (e) {
		/*-----  验证失败焦点转移  -----*/
			if(!this.hasfocus) {
				if(e.select) {e.select();} //避免无select方法的tag
				e.focus();
				this.hasfocus = true;
			}
		}
		ValidateForm.prototype.validateFalse = function (e,msg) {
		/*-----  验证失败  -----*/
			var tip,eid = e.getAttribute('id');
			if(e.parentNode.nextSibling == null || (e.parentNode.nextSibling.nodeName == '#text' && e.parentNode.nextSibling.nextSibling == null)) {
				//发布信息部分
				tip = e.parentNode;
				if(tip.getElementsByTagName('span').length == 0) {
					var w = document.createElement('span');
					var wmsg;
					wmsg = document.createTextNode(msg?msg:self.needText);
					w.className = 'checkFalse';
					w.appendChild(wmsg);
					tip.appendChild(w);
				}
			}else {
				//注册部分
				tip = e.parentNode.nextSibling.nodeName=='#text' ? e.parentNode.nextSibling.nextSibling : e.parentNode.nextSibling;
				tip.style.width='auto';
				tip.style.overflow = 'auto';
				removeClass(tip,'regCheckOk');
				removeClass(tip,'regCheckFalse');
				addClass(tip,'regCheckFalse');
				if(tip.innerText == '' || tip.innerText == self.needText) {
					tip.innerText = msg?msg:self.needText;
				}
			}
			this.focusthis(e);
		}
		ValidateForm.prototype.validateOK = function (e,msg) {
		/*-----  验证成功  -----*/
			var tip;
			if(e.parentNode.nextSibling == null || (e.parentNode.nextSibling.nodeName == '#text' && e.parentNode.nextSibling.nextSibling == null)) {
				tip = e.parentNode;
				if(tip.getElementsByTagName('span').length) {
					if(msg && tip.getElementsByTagName('span')[0].innerText == msg) {
						tip.removeChild(tip.getElementsByTagName('span')[0]);
					}
					if(!msg && tip.getElementsByTagName('span')[0].innerText == self.needText) {
						tip.removeChild(tip.getElementsByTagName('span')[0]);
					}
				}
			}else {
				tip = e.parentNode.nextSibling.nodeName=='#text' ? e.parentNode.nextSibling.nextSibling : e.parentNode.nextSibling;
				tip.style.width='0';
				tip.style.overflow = 'hidden';
				removeClass(tip,'regCheckOk');
				removeClass(tip,'regCheckFalse');
				addClass(tip,'regCheckOk');
			}
		}
		ValidateForm.prototype.validateFalseNeedFilled = function (ele,msg,isFocus) {
		/*-----  必填表单-验证失败  -----*/
			var tip,eid = ele.getAttribute('id');
			if(ele.parentNode.nextSibling == null || (ele.parentNode.nextSibling.nodeName == '#text' && ele.parentNode.nextSibling.nextSibling == null)) {
				//发布信息部分
				if(isFocus || !self.hasSubmit) {return true;}
				tip = ele.parentNode;
				if(tip.getElementsByTagName('span').length == 0) {
					var w = document.createElement('span');
					var wmsg;
					wmsg = document.createTextNode(msg?msg:self.needText);
					w.className = 'checkFalse';
					w.appendChild(wmsg);
					tip.appendChild(w);
				}
			}else {
				//注册部分
				if(isFocus || !self.hasSubmit) {return true;}
				tip = ele.parentNode.nextSibling.nodeName=='#text' ? ele.parentNode.nextSibling.nextSibling : ele.parentNode.nextSibling;
				removeClass(tip,'regCheckOk');
				removeClass(tip,'regCheckFalse');
				addClass(tip,'regCheckFalse');
				if(tip.innerText == '') {
					tip.innerText = self.needText;
				}
				/*-----
				//在输入框下方提示信息
				if(!document.getElementById('tip_need'+eid)) {
					var tip_needFilled = document.createElement('ins');
					var tip_needText = document.createTextNode(self.needText);
					tip_needFilled.setAttribute('id','tip_need'+eid);
					tip_needFilled.className='tipNeedFilld';
					tip_needFilled.appendChild(tip_needText);
					ele.parentNode.appendChild(tip_needFilled,tip);
				}
				-----*/
			}
			this.focusthis(ele);
		}
		ValidateForm.prototype.validateOKNeedFilled = function (ele,msg,isFocus) {
		/*-----  必填表单-验证成功  -----*/
			var tip,eid = ele.getAttribute('id');
			if(ele.parentNode.nextSibling == null || (ele.parentNode.nextSibling.nodeName == '#text' && ele.parentNode.nextSibling.nextSibling == null)) {
				//发布信息部分
				tip = ele.parentNode;
				if(tip.getElementsByTagName('span').length) {
					if(msg && tip.getElementsByTagName('span')[0].innerText == msg) {
						tip.removeChild(tip.getElementsByTagName('span')[0]);
					}
					if(!msg && tip.getElementsByTagName('span')[0].innerText == self.needText) {
						tip.removeChild(tip.getElementsByTagName('span')[0]);
					}
				}
			}else {
				//注册部分
				tip = ele.parentNode.nextSibling.nodeName=='#text' ? ele.parentNode.nextSibling.nextSibling : ele.parentNode.nextSibling;
				removeClass(tip,'regCheckOk');
				removeClass(tip,'regCheckFalse');
				if(tip.innerText != '' && tip.innerText != self.needText) {
					addClass(tip,'regCheckOk');
				}
				if(tip.innerText == self.needText) {
					tip.innerText = '';
				}
				//if(isFocus || !self.hasSubmit) {return true;}
				/*-----
				//在输入框下方提示信息
				tip = ele.parentNode;
				if(document.getElementById('tip_need'+eid)) {
					tip.removeChild(document.getElementById('tip_need'+eid));
				}
				  -----*/
			}
		}
		ValidateForm.prototype.required = function (e) {
		/*-----  必填项检查  -----*/
			var v = e.value;
			var t = e.tagName;

			var tip = e.parentNode;
			var sp = tip.getElementsByTagName('span');
			for(var i=0; i<sp.length; i++) {
				var spclass = sp[i].className || '';
				if(spclass == 'hasRegTip') {
					tip.removeChild(sp[i]);
				}
			}

			if(t == 'INPUT' && (e.type == 'text' || e.type == 'password')) { //文本输入框必填项
				if(v != '' || e.disabled == true) {//跳过检查disabled=false的input
					//this.validateOK(e);
					this.validateOKNeedFilled(e);
					return true;
				}else {
					//this.validateFalse(e);
					this.validateFalseNeedFilled(e);
					return false;
				}
			}else if(t == 'SELECT') { //下拉框必填项
				if(v != '0' || e.disabled == true) {
					//this.validateOK(e);
					this.validateOKNeedFilled(e);
					return true;
				}else {
					//this.validateFalse(e);
					this.validateFalseNeedFilled(e);
					return false;
				}
			}else {
				return false;
			}
		}
		ValidateForm.prototype.validateUserID = function (e) {
		/*-----  验证用户名：5-20长度，仅数字&字母&下划线  -----*/
			var v = e.value;
			if(e.disabled == true || v=='' || v==null || v == e.defaultValue) {return true;}
			var patrn=/^([a-zA-Z0-9]|[._]){5,20}$/;
			if(patrn.exec(v)) {
				this.validateOK(e);
				return true;
			}else {
				this.validateFalse(e);
				return false;
			}
		}

		ValidateForm.prototype.validatePW = function (e) {
		/*-----  验证密码：6-16位  -----*/
			var v = e.value;
			if(e.disabled == true || v=='' || v==null || v == e.defaultValue) {return true;}
			if(/^(\w){6,16}$/.test(v)) {
				this.validateOK(e);
				return true;
			}else {
				this.validateFalse(e);
				return false;
			}
		}
		ValidateForm.prototype.validateRePW = function (e,o) {
		/*-----  验证重复密码：与密码一致  -----*/
			var v = e.value;
			var ov = document.getElementById(o).value;
			if(ov == '') {return true;}
			if(v && v == ov) {
				this.validateOK(e);
				return true;
			}else {
				this.validateFalse(e);
				return false;
			}
		}

		ValidateForm.prototype.validateName = function (e) {
		/*-----  验证真实姓名：2-3个中文字符  -----*/
			var v = e.value;
			if(e.disabled == true || v=='' || v==null || v == e.defaultValue) {return true;}
			if((2<= v.length && v.length <=3) && (/[\u4e00-\u9fa5]/.test(v) == true)) {
				this.validateOK(e);
				return true;
			}else {
				this.validateFalse(e);
				return false;
			}
		}

		ValidateForm.prototype.validateEmail = function (e) {
		/*-----  验证Email  -----*/
			var v = e.value;
			if(e.disabled == true || v=='' || v==null || v == e.defaultValue) {return true;}
			if(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(v) == true) {
				this.validateOK(e);
				return true;
			}else {
				this.validateFalse(e);
				return false;
			}
		}

		ValidateForm.prototype.compareNum = function (small,big) {
		/*-----  比较大小  -----*/
			if((small.disabled == true || big.disabled == true) || (big.value=='' || big.value==null) || (small.value=='' || small.value==null)) {return true;}
			if(parseFloat(big.value) >= parseFloat(small.value)) {
				this.validateOK(big,'最大值过小');
				return true;
			}else {
				this.validateFalse(big,'最大值过小');
				return false;
			}
		}
		ValidateForm.prototype.isNum = function (e) {
		/*-----  验证数字：纯数字，无任何符号  -----*/
			var v = e.value;
			if(e.disabled == true || v=='' || v==null || v == e.defaultValue) {return true;}
			if(v!='' || v!=null) {
				if(v.search(/^(-|\+)?\d+$/) != -1) {
					this.validateOK(e,'请输入正整数');
					return true;
				}else {
					this.validateFalse(e,'请输入正整数');
					return false;
				}
			}
			return true;
		}
		ValidateForm.prototype.isFloatNum = function (e) {
		/*-----  验证带小数点数字：允许输入正整数及带小数点正数  -----*/
			var v = e.value;
			if(e.disabled == true || v=='' || v==null || v == e.defaultValue) {return true;}
			if(v!='' || v!=null) {
				var patrn = /^[\d]+(([\.])?([\d])+)?$/g;
				if(v.search(patrn) != -1) {
					this.validateOK(e,'请输入数字');
					return true;
				}else {
					this.validateFalse(e,'请输入数字');
					return false;
				}
			}
			return true;
		}

		ValidateForm.prototype.isMobile = function (e) {
		/*-----  验证手机号码：手机号码或者电话号码  -----*/
			var v = e.value;
			if(e.disabled == true || v=='' || v==null || v == e.defaultValue) {return true;}
			if(v!='' || v!=null) {
				var patrn = /^((13[0-9][- ]?\d{8})|(15[89][- ]?\d{8}))$/; //验证手机号码：(严格)前3位之后可接空格或-，必须是13x或者158/9开头，数字
				var patrn2 = /^\d{3,4}[- ]?\d{4,8}$/;//允许电话号码
				if (v.match(patrn2)) {
					this.validateOK(e,'请输入正确的手机号码');
					return true;
				}else {
					this.validateFalse(e,'请输入正确的手机号码');
					return false;
				}
			}
			return true;
		}

		ValidateForm.prototype.isTel = function (e) {
		/*-----  校验普通电话、传真号码  -----*/
			var v = e.value;
			if(e.disabled == true || v=='' || v==null) {return true;}
			if(v!='' || v!=null) {
				var patrn = /(^(\d{2,4}[-_－—]?)?\d{3,8}([-_－—]?\d{3,8})?([-_－—]?\d{1,7})?$)|(^0?1[35]\d{9}$)/;
				if (!v.match(patrn) || v.length >17){
					this.validateFalse(e,'请输入正确的电话号码');
					return false;
				}else {
					this.validateOK(e,'请输入正确的电话号码');
					return true;
				}
			}
			return true;
		}

		ValidateForm.prototype.keyWords = function (e) {
		/*-----  验证搜索关键字：禁止非法字符  -----*/
			var v = e.value;
			if(e.disabled == true || v=='' || v==null || v == e.defaultValue) {return true;}
			var patrn=/^[^`~!@#$%^&*()+=|\\\][\]\{\}:;’\,.<>/?]{1}[^`~!@$%^&()+=|\\\][\]\{\}:;’\,.<>?]{0,30}$/;
			if(patrn.test(v) == true) {
				this.validateOK(e,'此项不能有特殊字符');
				return true;
			}else {
				this.validateFalse(e,'此项不能有特殊字符');
				return false;
			}
		}

		ValidateForm.prototype.checkTerm = function (e) {
			var tip = e.parentNode.nextSibling.nodeName=='#text' ? e.parentNode.nextSibling.nextSibling : e.parentNode.nextSibling;
			if(e.checked) {
				removeClass(tip,'regCheckOk');
				removeClass(tip,'regCheckFalse');
				addClass(tip,'regCheckOk');
				tip.innerText = '';
				return true;
			}else {
				removeClass(tip,'regCheckOk');
				removeClass(tip,'regCheckFalse');
				addClass(tip,'regCheckFalse');
				tip.innerText = '请选择是否同意《Funeee.com用户注册协议》';
				this.focusthis(e);
				return false;
			}
		}

		ValidateForm.prototype.ini = function () {
		/*-----  添加事件  -----*/
			if(document.forms[0]) {focusHightLight(document.forms[0],'#f0f2fc'); /*-----  高亮输入框  -----*/}
			if(!isIE()) {
				if(this.require.length) {
					for(var i=0; i<this.require.length; i++) {
						document.getElementById(this.require[i]).attachEvent('onblur',function (e) {
							e=window.event||e;obj=e.srcElement||e.target ;self.required(obj)
						});
					}
				}
			}
			if(this.userid) {
				var uid = document.getElementById(this.userid);
				uid.attachEvent('onblur',function () {self.validateUserID(uid)});
			}
			if(this.name) {
				var name = document.getElementById(this.name);
				name.attachEvent('onblur',function () {self.validateName(name)});
			}
			if(this.email) {
				var email = document.getElementById(this.email);
				email.attachEvent('onblur',function () {self.validateEmail(email)});
			}
			if(this.words) {
				var words = document.getElementById(this.words);
				words.attachEvent('onblur',function () {self.keyWords(words)});
			}
			if(this.compare.length) {
				for(var i=0; i<this.compare.length; i++) {
					(function () {
						var small = document.getElementById(self.compare[i][0]);
						var big = document.getElementById(self.compare[i][1]);
						big.attachEvent('onblur',function () {self.compareNum(small,big)});
					})();
				}
			}
			if(this.num.length) {
				for(var i=0; i<this.num.length; i++) {
					document.getElementById(self.num[i]).attachEvent('onblur',function (e) {
						e=window.event||e;obj=e.srcElement||e.target ;self.isNum(obj);
					});
				}
			}
			if(this.floatnum.length) {
				for(var i=0; i<this.floatnum.length; i++) {
					document.getElementById(self.floatnum[i]).attachEvent('onblur',function (e) {
						e=window.event||e;obj=e.srcElement||e.target ;self.isFloatNum(obj);
					});
				}
			}
			if(this.tel.length) {
				for(var i=0; i<this.tel.length; i++) {
					document.getElementById(self.tel[i]).attachEvent('onblur',function (e) {
						e=window.event||e;obj=e.srcElement||e.target ;self.isTel(obj);
					});
				}
			}
			if(this.mobile.length) {
				for(var i=0; i<this.mobile.length; i++) {
					document.getElementById(self.mobile[i]).attachEvent('onblur',function (e) {
						e=window.event||e;obj=e.srcElement||e.target ;self.isMobile(obj);
					});
				}
			}
			if(isIE()) {
				if(this.require.length) {
					for(var i=0; i<this.require.length; i++) {
						document.getElementById(this.require[i]).attachEvent('onblur',function (e) {
							e=window.event||e;obj=e.srcElement||e.target ;self.required(obj)
						});
					}
				}
			}
			/*-----  ie必须放下面，有点诡异....囧  -----*/
			if(this.pw) {
				document.getElementById(this.pw).attachEvent('onblur',function (e) {
					e=window.event||e;obj=e.srcElement||e.target ;self.validatePW(obj);
				});
			}
			if(this.repw && this.pw) {
				var repw = document.getElementById(this.repw);
				var vpw = this.pw;
				repw.attachEvent('onblur',function () {self.validateRePW(repw,vpw)});
			}
		}
		ValidateForm.prototype.check = function () {
		/*-----  遍历表单检验  -----*/
			this.hasfocus = false; //每次点击按钮重置focus状态
			this.hasSubmit = true; //点击按钮后设定hasSubmit为true

			var vid,vpw,vrepw,vmail,rq=0,vterm,vwords,cop=0,vnum=0,vtel=0,vmobile=0,vfloat=0;
			rq = 0;cop = 0;vnum=0;vtel=0;vmobile=0;vfloat=0;
			if(this.require) {for(var i=0,require = 0; i<this.require.length; i++) {
				rq += this.required(document.getElementById(this.require[i]));
			}}else {rq = 0;}
			if(this.userid) {vid = this.validateUserID(document.getElementById(this.userid));}
			else {vid = true;}
			if(this.pw) {vpw = this.validatePW(document.getElementById(this.pw));}
			else {vpw = true;}
			if(this.repw) {vrepw = this.validateRePW(document.getElementById(this.repw),this.pw);}
			else {vrepw = true;}
			if(this.email) {vmail = this.validateEmail(document.getElementById(this.email));}
			else {vmail = true;}
			if(this.term) {vterm = this.checkTerm(document.getElementById(this.term));}
			else {vterm = true;}
			if(this.words) {vwords = this.keyWords(document.getElementById(this.words));}
			else {vwords = true;}
			if(this.compare) {for(var i=0; i<this.compare.length; i++) {
				cop += this.compareNum(document.getElementById(this.compare[i][0]),document.getElementById(this.compare[i][1]));
			}}else {cop = 0;}
			if(this.num) {for(var i=0; i<this.num.length; i++) {
				vnum += this.isNum(document.getElementById(this.num[i]));
			}}else {vnum = 0;}
			if(this.floatnum) {for(var i=0; i<this.floatnum.length; i++) {
				vfloat += this.isFloatNum(document.getElementById(this.floatnum[i]));
			}}else {vfloat = 0;}
			if(this.tel) {for(var i=0; i<this.tel.length; i++) {
				vtel += this.isTel(document.getElementById(this.tel[i]));
			}}else {vtel = 0;}
			if(this.mobile) {for(var i=0; i<this.mobile.length; i++) {
				vmobile += this.isMobile(document.getElementById(this.mobile[i]));
			}}else {vmobile = 0;}

			if(vid && vpw && vrepw && vmail && vterm && vwords && (rq == this.require.length) && (cop == this.compare.length) && (vnum == this.num.length) && (vfloat == this.floatnum.length) && (vtel == this.tel.length) && (vmobile == this.mobile.length)) {
				return true;
			}else {
				return false;
			}
		}
	ValidateForm._initialized = true;
	}
}

function focusHightLight(whichform,color) {
/*-----  输入框focus后高亮  -----*/
	var wrap = whichform;
	for(var i=0; i<wrap.elements.length; i++) {
		var ele = wrap.elements[i];
		var setcolor = function (tar) {tar.oldcolor = tar.style.backgroundColor || 'transparent';tar.style.backgroundColor = color};
		var backcolor = function (tar) {tar.style.backgroundColor = tar.oldcolor || 'transparent'};
		var tipFocus = function (tar) {
			if(tar.parentNode.nextSibling) {
				var tip = tar.parentNode.nextSibling.nodeName=='#text' ? tar.parentNode.nextSibling.nextSibling : tar.parentNode.nextSibling;
				if(tip) {
					tip.style.width='auto';
					tip.style.overflow = 'auto';
					if(tip.innerText != '') {
						if(hasClass(tip,'regCheckFalse')) {
							addClass(tip,'regTipFocus_false');
						}else {
							addClass(tip,'regTipFocus');
						}
					}
				}
			}
		};
		var tipBlur = function (tar) {
			if(tar.parentNode.nextSibling) {
				var tip = tar.parentNode.nextSibling.nodeName=='#text' ? tar.parentNode.nextSibling.nextSibling : tar.parentNode.nextSibling;
				if(tip) {removeClass(tip,'regTipFocus');removeClass(tip,'regTipFocus_false');}
			}
		};
		var type = ele.getAttribute('type');
		if(type == 'text' || type == 'password' || ele.tagName == 'TEXTAREA') {
			ele.attachEvent('onfocus',function (e) {e = e||window.event;obj=e.srcElement||e.target;setcolor(obj);tipFocus(obj);});
			ele.attachEvent('onblur',function (e) {e = e||window.event;obj=e.srcElement||e.target;backcolor(obj);tipBlur(obj);});
		}
	}
}
/*-----  提交表单后提示出错  -----*/
function rsMsg(tar,msg,tipid) {
	var tipwrap = tar.parentNode;
	var tip_def = tipwrap.nextSibling.nodeName=='#text' ? tipwrap.nextSibling.nextSibling : tipwrap.nextSibling;

	var hasReg = document.createElement('span');
	hasReg.className = 'hasRegTip';
	hasReg.setAttribute('id',tipid)
	var hasReg_text = document.createTextNode(msg);
	hasReg.appendChild(hasReg_text);
	tipwrap.appendChild(hasReg);

	removeClass(tip_def,'regCheckOk');
	removeClass(tip_def,'regCheckFalse');
	addClass(tip_def,'regCheckFalse');
	tar.focus();
	tar.select();
}

/*-----  ajax验证函数部分  -----*/
function ajaxTipShow(v,tips,tipid,tipwrap) {
/*-----  读取结果  -----*/
	var tip_def = tipwrap.nextSibling.nodeName=='#text' ? tipwrap.nextSibling.nextSibling : tipwrap.nextSibling;
	if (v == 1){
		if(!document.getElementById(tipid)) {
			var hasReg = document.createElement('span');
			hasReg.className = 'hasRegTip';
			hasReg.setAttribute('id',tipid)
			var hasReg_text = document.createTextNode(tips);
			hasReg.appendChild(hasReg_text);
			tipwrap.appendChild(hasReg);
		}
		//removeClass(tip_def,'regCheckOk');
		//removeClass(tip_def,'regCheckFalse');
		//addClass(tip_def,'regCheckFalse');
		//tipwrap.focus();
		return false;
	}else{
		if(document.getElementById(tipid)) {
			document.getElementById(tipid).parentNode.removeChild(document.getElementById(tipid));
		}
		//removeClass(tip_def,'regCheckOk');
		//removeClass(tip_def,'regCheckFalse');
		//addClass(tip_def,'regCheckOk');
		return true;
	}
}