//超严格注册
//判断是否Email格式
function ismail(mail)
{
	return(new RegExp(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/).test(mail));
}
//判断是否数字
function IsNumeric(sText)
{
   var ValidChars = "0123456789.";
   var IsNumber = true;
   var Char;
   
	for (var i = 0; i < sText.length && IsNumber === true; i++)
	{
		Char = sText.charAt(i);
		if (ValidChars.indexOf(Char) == -1)
		{
			IsNumber = false;
		}
	}
   return IsNumber;
}
//判断身份证
function CheckChinaIDCard_J(val,mode)
{
	if((mode === 0) && ((val.value === "")||(val.value == undefined)))
	{
		return true;
	}
	var sNo = val;
	switch(sNo.length)
	{
		case 15:
		{
			if (!isInteger(sNo))
			{
				//alert("请输入正确的身份证。");
				return false;
			}
			return true;
		}
		case 18:
		{
			str1 = sNo.substring(0,17);
			str2 = sNo.substring(17,18);
			alpha = "xX0123456789";
			if (!isInteger(str1))
			{
				//alert("请输入正确的身份证。");
				return false;
			}
			if(!isInteger(str1)||alpha.indexOf(str2)==-1)
			{
				//alert("请输入正确的身份证。");
				return false;
			}
			return true;
		}
	}
	//alert("请输入正确的身份证。");
	return false;
}
//检验身份证最后一位 Written by Henry.2007-9-7
function idcard(string)
{
	if(string.length == 15){return true;}
	var quotiety = [7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2];
	var number = ["1","0","X","9","8","7","6","5","4","3","2","1"];
	var i = 0;
	var totle = 0;
	for (var index in quotiety)
	{
		str = string.substr(i,1);
		i++;
		totle += parseInt(quotiety[index])*parseInt(str);
	}
	var res = totle%11;
	return(string.substr(17,1) == number[res]);
}
function idcard_sex(string,gender)
{
	if(string.length == 15)
	{
		var sex = parseInt(string.substr(14,1));
	}
	else if(string.length == 18)
	{
		var sex = parseInt(string.substr(16,1));
	}
	if(sex%2)
	{
		return "5" == gender;
	}
	else
	{
		return "6" == gender;
	}
}
//判断整数
function isInteger(sNum)
{
	var num;
	num = new RegExp('[^0-9_]','');
	if (isNaN(sNum))
	{
		return false;
	}
	else
	{
		if (sNum.search(num)>=0)
		{
			return false;
		}
		else
		{
			return true;
		}
	}
}
//输入3~20个以字母开头可带数字的用户名
function isRegisterUserName(s)   
{
	var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){2,19}$/;   
	if (!patrn.exec(s))
	{
		return false;
	}
	return true;
}
//判断URL
function CheckURL(val)
{
	if(val.match(/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,\'@?^=%&:;\/~\+#]*[\w\-\@?^=%&\/~\+#])?/ig) == val)
	{
		return true;
	}
	else
	{
		return false;
	}
}
//判断邮政编码
function isPostalCode(s)
{
	//var patrn=/^[a-zA-Z0-9]{3,12}$/;
	var patrn=/^[a-zA-Z0-9 ]{3,12}$/;
	if (!patrn.exec(s))
	{
		return false;
	}
	return true;
}
//判断手机号码
function isMobil(s)
{   
	var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;
	if (!patrn.exec(s))
	{
		return false;
	}
	return true;
}
//不允许字符出现
function isSearch(s)
{
	var patrn=/^[^`~! ，。；！？：“”‘’、（）—…￥·@#$%^&*()+=|\\\][\]\{\}:;'\,.<>/?]{1}[^`~! ，。；！？：“”‘’、（）—…￥·@$%^&()+=|\\\][\]\{\}:;'\,.<>?]{0,19}$/;   
	if (!patrn.exec(s))
	{
		return false;
	}
	return true;
}
//输出错误
jQuery.fn.output = function(message)
{
	if($(this).next(".output").attr("name") == this.attr("id"))
	{}
	else
	{
		this.after('<span class="output" name="'+this.attr("id")+'">'+message+'</span>');
	}
};
//失去焦点时作判断
//需验证列
var arr = ['username','password','password1','password2','email','name',
'gender','idcard','mobile_no','sitename','url','type',
'category','fullname','account_no','address','educational','profession',
'verifycode','bankname','realname','bankaccount',
'income','title','control','qq'];
//需验证但可以为空列
var withoutarr = ['gender','postcode','msn','phone'];
$(function(){
	$("input[@type=text],[@type=password],select").blur(function(){
		if(in_array(arr,$(this).attr("id")))
		{
			var functionName = $(this).attr("id")+"_"+"blur";
			eval (functionName+'()');
		}
	});
});
//仿PHP的in_array
//Array.prototype.inArray = function (value){
function in_array(arr,value)
{
	var i;
    for (i=0; i < arr.length; i++)
    {
        if (arr[i] === value)
        {
            return true;
        }
    }
    return false;
};
function bankname_blur()
{
	$("span[@name=bankname]").remove();
	if($("#bankname").val() == "")
	{
		$("#bankname").output("开户银行不能为空");
	}	
}
function realname_blur()
{
	$("span[@name=realname]").remove();
	if($("#realname").val() == "")
	{
		$("#realname").output("开户人不能为空");
	}
}
function bankaccount_blur()
{
	$("span[@name=bankaccount]").remove();
	if($("#bankaccount").val() == "")
	{
		$("#bankaccount").output("银行账户不能为空");
	}
}
function username_blur()
{
	$("span[@name=username]").remove();
	if($("#username").val() == "")
	{
		$("#username").output("用户名不能为空");
	}
	if(!isRegisterUserName($("#username").val()))
	{
		$("#username").output("用户名不正确");
	}
	else
	{
		$("#username").output("正在检验中...");
	    $.ajax({
	        type: "post",
	        data: $("#username"),
	        url: "service/checklogin.jsp",
	        success: checkusername_success
	    });
	}
}
function checkusername_success(data)
{
	//alert("get one!!" + data);
	$("span[@name=username]").remove();
	var dataArray = data.split('##'); 
	var message = dataArray[0];
	var flag = dataArray[1];
	//alert("'" + message + "':'" + flag + "'");
	if (flag == '0')
	{
		$("#username").output(message);
	}
	else if (flag == '1')
	{
		$("#username").after('&nbsp;&nbsp;<span style="color:blue" name="username">用户名可用</span>');
	}
}
function verifycode_blur()
{
	$("span[@name=verifycode]").remove();
	if($("#verifycode").val() == "")
	{
		$("#verifycode").output("验证码不能为空");
	}
	if($("#verifycode").val().length != 4)
	{
		$("#verifycode").output("请填写4位的验证码");
	}
	else
	{
		$("#verifycode").output("正在检验中...");
	    $.ajax({
	        type: "post",
	        data: $("#verifycode"),
	        url: "service/checkverifycode.jsp",
	        success: verifycode_success
	    });
	}
}
function verifycode_success(data)
{
	//alert("get one!!" + data);
	$("span[@name=verifycode]").remove();
	var dataArray = data.split('##'); 
	var message = dataArray[0];
	var flag = dataArray[1];
	//alert("'" + message + "':'" + flag + "'");
	if (flag == '0')
	{
		$("#verifycode").output(message);
	}
	else if (flag == '1')
	{
		$("#verifycode").after('&nbsp;&nbsp;<span style="color:blue" name="username">验证码正确</span>');
	}
}
function password_blur()
{
	$("span[@name=password]").remove();
	if($("#password").val() == "")
	{
		$("#password").output("密码不能为空");
	}
	if($("#password").val().length < 6 || $("#password").val().length > 20)
	{
		$("#password").output("请填写六至二十位的密码");
	}
}
function password1_blur()
{
	$("span[@name=password1]").remove();
	if($("#password1").val() == "")
	{
		$("#password1").output("密码不能为空");
	}
	else if($("#password1").val().length < 6 || $("#password1").val().length > 20)
	{
		$("#password1").output("请填写六至二十位的密码");
	}
	else
	{
		$("#url").output("正在检验中...");
		$.ajax({
	        type: "post",
	        data: $("#password1"),
	        url: "service/checkpassword.jsp",
	        success: passwordl_success
	    });
	}
}
function passwordl_success(data)
{
	$("span[@name=password1]").remove();
	var dataArray = data.split('##'); 
	var message = dataArray[0];
	var flag = dataArray[1];
	if (flag == '0')
	{
		$("#password1").output(message);
	}
	else if (flag == '1')
	{
		$("#password1").after('&nbsp;&nbsp;<span style="color:blue" name="url">密码正确</span>');
	}
}
function password2_blur()
{
	$("span[@name=password2]").remove();
	if($("#password2").val() == "")
	{
		$("#password2").output("请再次填写密码");
	}
	if(document.getElementById("password") != null)
	{
		if($("#password2").val() != $("#password").val())
		{
			$("#password2").output("两次输入的密码不一致");
		}
	}
	else
	{
		if($("#password2").val() != $("#password").val())
		{
			$("#password2").output("两次输入的密码不一致");
		}
	}
}
function email_blur()
{
	$("span[@name=email]").remove();
	if($("#email").val() == "")
	{
		$("#email").output("请填写您的电子邮箱");
	}
	if(!ismail($("#email").val()))
	{
		$("#email").output("电子邮箱格式不正确");
	}
	else
	{
		$("#email").output("正在检验中...");
		$.ajax({
	        type: "post",
	        data: $("#email"),
	        url: "service/checkemail.jsp",
	        success: checkemail_success
	    });
	}
}
function checkemail_success(data)
{
	$("span[@name=email]").remove();
	var dataArray = data.split('##'); 
	var message = dataArray[0];
	var flag = dataArray[1];
	if (flag == '0')
	{
		$("#email").output(message);
	}
	else if (flag == '1')
	{
		$("#email").after('&nbsp;&nbsp;<span style="color:blue" name="url">邮箱可用</span>');
	}
	/*$('#url_status').html(message);*/
}
function msn_blur()
{
	$("span[@name=msn]").remove();
	if($("#msn").val() != "")
	{
		if(!ismail($("#msn").val()))
		{
			$("#msn").output("MSN格式不正确");
		}
	}

}
function phone_blur()
{
	$("span[@name=phone]").remove();
	if($("#phone").val() != "")
	{
		if(!IsNumeric($("#phone").val()))
		{
			$("#phone").output("联系座机只能是数字");
		}
	}
}
function name_blur()
{
	$("span[@name=name]").remove();
	if($("#name").val() == "")
	{
		$("#name").output("请填写真实姓名");
	}
	if($("#name").val().length > 5)
	{
		$("#name").output("真实姓名填写过长");
	}
}
function address_blur()
{
	$("span[@name=address]").remove();
	if($("#address").val() == "")
	{
		$("#address").output("请填写邮寄地址");
	}
}
function educational_blur()
{
	$("span[@name=educational]").remove();
	if($("#educational").val() == "")
	{
		$("#educational").output("请填写您的学历");
	}
}
function profession_blur()
{
	$("span[@name=profession]").remove();
	if($("#profession").val() == "")
	{
		$("#profession").output("请填写您的职位");
	}
}
function income_blur()
{
	$("span[@name=income]").remove();
	if($("#income").val() == "")
	{
		$("#income").output("请填写您的收入情况");
	}
}
function gender_blur()
{
	$("span[@name=gender]").remove();
}
function idcard_blur()
{
	$("span[@name=idcard]").remove();
	if($("#idcard").val() == "")
	{
		$("#idcard").output("请填写您的身份证号码");
	}
	if(!CheckChinaIDCard_J($("#idcard").val(),1))
	{
		$("#idcard").output("身份证号码不正确");
	}
	if(!idcard($("#idcard").val()))
	{
		$("#idcard").output("请再认真检查身份证号码(最后一位如果是X请大写)");
	}
	else if($("#gender").val() != "")
	{
		$("span[@name=gender]").remove();
		if(!idcard_sex($("#idcard").val(),$("#gender").val()))
		{
			$("#gender").after('<span style="color:#CCCCCC" name="gender">'+"！"+'</span>');
		}
	}
}
function postcode_blur()
{
	$("span[@name=postcode]").remove();
	if($("#postcode").val() != "")
	{
		if(!IsNumeric($("#postcode").val()))
		{
			$("#postcode").output("邮政编码只能是数字");
		}
		else if(!isPostalCode($("#postcode").val()))
		{
			$("#postcode").output("邮政编码不正确");
		}
	}
}
function mobile_no_blur()
{
	$("span[@name=mobile_no]").remove();
	if($("#mobile_no").val() == "")
	{
		$("#mobile_no").output("请填写您的手机号码");
	}
	if(!IsNumeric($("#mobile_no").val()))
	{
		$("#mobile_no").output("手机号码只能是数字");
	}
	if($("#mobile_no").val().length != 11 || $("#mobile_no").val().substr(0, 1) != 1)
	{
		$("#mobile_no").output("手机号码不正确");
	}
	if(parseInt($("#mobile_no").val()) < 13000000000 || parseInt($("#mobile_no").val()) > 17000000000)
	{
		$("#mobile_no").output("手机号码不正确");
	}
	if(!isMobil($("#mobile_no").val()))
	{
		$("#mobile_no").output("手机号码不正确");
	}
}
function qq_blur()
{
	$("span[@name=qq]").remove();
	if($("#qq").val() != "")
	{
		if(!IsNumeric($("#qq").val()))
		{
			$("#qq").output("QQ号码只能是数字");
		}
		if($("#qq").val().length < 5)
		{
			$("#qq").output("QQ号码不正确");
		}
	}
}
function sitename_blur()
{
	$("span[@name=sitename]").remove();
	if($("#sitename").val() == "")
	{
		$("#sitename").output("请填写您站点的名称(若有多个站点请先填写您的主站点)");
	}
}
function url_blur()
{
	$("span[@name=url]").remove();
	if($("#url").val() == "")
	{
		$("#url").output("请填写您站点的URL地址");
	}
	if(!CheckURL($("#url").val()))
	{
		$("#url").output("请填写正确的URL地址(不需要http://)");
	}
	else
	{
		$("#url").output("正在检验中...");
		$.ajax({
	        type: "post",
	        data: $("#url"),
	        url: "service/checksiteurl.jsp",
	        success: checkurl_success
	    });
	}
}
function checkurl_success(data)
{
	$("span[@name=url]").remove();
	var dataArray = data.split('##'); 
	var message = dataArray[0];
	var flag = dataArray[1];
	if (flag == '0')
	{
	//$('#url').select();
		$("#url").output(message);
	}
	else if (flag == '1')
	{
		$("#url").after('&nbsp;&nbsp;<span style="color:blue" name="url">地址可用</span>');
	}
	/*$('#url_status').html(message);*/
}
function type_blur()
{
	$("span[@name=type]").remove();
	if($("#type").val() == "")
	{
		$("#type").output("请选择其类型");
	}
}
function title_blur()
{
	$("span[@name=title]").remove();
	if($("#title").val() == "")
	{
		$("#title").output("请选择标题");
	}
}
function control_blur()
{
	$("span[@name=control]").remove();
	if($("#control").val() == "")
	{
		$("#control").output("请选择是否允许切换");
	}
}
function category_blur()
{
	$("span[@name=category]").remove();
	if($("#category").val() == "")
	{
		$("#category").output("请选择站点内容类型");
	}
}
function fullname_blur()
{
	$("span[@name=fullname]").remove();
	if($("#fullname").val() == "")
	{
		$("#fullname").output("请填写开户银行全名");
	}
}
function account_no_blur()
{
	$("span[@name=account_no]").remove();
	if($("#account_no").val() == "")
	{
		$("#account_no").output("请填写银行帐户或卡号");
	}
	if(!IsNumeric($("#account_no").val()))
	{
		$("#account_no").output("银行帐户或卡号只能是数字");
	}
}

//注册时按提交按钮触发
function accede2()
{
	if($("#agree").attr("checked") != true)
	{
		alert("您未同意服务条款，请先查看详细条款协议并勾选“同意条款”。");return false;
	}
	accede();
	if($("span.output").length > 0)
	{
		alert("还有"+$("span.output").length+"个地方不正确");return false;
	}
	if($("#bankselect").val() != "其它")
	{
		$("#bankname").val($("#bankselect").val()+$("#bankname").val())
	}	
}
//修改资料时按提交按钮触发
function accede3()
{
	accede();
	if($("span.output").length > 0)
	{
		alert("还有"+$("span.output").length+"个地方不正确");return false;
	}
}

//所有判断
function accede()
{
	for(var index in arr)
	{
		if($("#"+arr[index]).val() == "")
		{
			$("#"+arr[index]).output("必填");
		}
	}
	for(var index in withoutarr)
	{
		var functionName = withoutarr[index]+"_"+"blur"+"()";
		eval(functionName);
	}
	/*
	$("span[@name=username]").remove();
	if($("#username").val() == "")
	{
		$("#username").output("用户名不能为空！");
		//alert("用户名不能为空。");return false;
	}
	if(!isRegisterUserName($("#username").val()))
	{
		$("#username").output("用户名不正确！");
		//alert("用户名长度不正确。");return false;
	}
	$("span[@name=password]").remove();
	if($("#password").val() == "")
	{
		$("#password").output("密码不能为空！");
		//alert("密码不能为空！");return false;
	}
	if($("#password").val().length < 6 || $("#password").val().length > 20)
	{
		$("#password").output("请填写六至二十位的密码！");
		//alert("请填写长于六至二十位的密码！");return false;
	}
	$("span[@name=password2]").remove();
	if($("#password2").val() == "")
	{
		$("#password2").output("请再次填写密码！");
		//alert("请填写确认密码！");return false;
	}
	if($("#password2").val() != $("#password").val())
	{
		$("#password2").output("两次输入的密码不一致！");
		//alert("两次输入的密码不一致！");return false;
	}
	$("span[@name=email]").remove();
	if($("#email").val() == "")
	{
		$("#email").output("请填写您的电子邮箱！");
		//alert("请填写您的电子邮箱！");return false;
	}
	if(!ismail($("#email").val()))
	{
		$("#email").output("电子邮箱格式错误！");
		//alert("电子邮箱格式错误！");return false;
	}
	$("span[@name=name]").remove();
	if($("#name").val() == "")
	{
		$("#name").output("请填写真实姓名！");
		//alert("请填写您的真实姓名！");return false;
	}
	$("span[@name=idcard]").remove();
	if($("#idcard").val() == "")
	{
		$("#idcard").output("请填写您的身份证号码！");
		//alert("请填写您的身份证号码！");return false;
	}
	if(!CheckChinaIDCard_J($("#idcard").val(),1))
	{
		$("#idcard").output("身份证号码不正确！");
		//alert("身份证号码不正确！");return false;
	}
	$("span[@name=postcode]").remove();
	if($("#postcode").attr("value") != undefined)
	{
		if($("#postcode").val() != "")
		{
			if(!IsNumeric($("#postcode").val()))
			{
				$("#postcode").output("邮政编码只能是数字！");
				//alert("邮政编码只能是数字！");return false;
			}
			if(!isPostalCode($("#postcode").val()))
			{
				$("#postcode").output("邮政编码不正确！");
				//alert("邮政编码不正确！");return false;
			}
		}
	}
	$("span[@name=mobile_no]").remove();
	if($("#mobile_no").val() == "")
	{
		$("#mobile_no").output("请填写您的手机号码！");
		//alert("请填写您的手机号码！");return false;
	}
	if(!IsNumeric($("#mobile_no").val()))
	{
		$("#mobile_no").output("手机号码只能是数字！");
		//alert("手机号码只能是数字！");return false;
	}
	if($("#mobile_no").val().length != 11 || $("#mobile_no").val().substr(0, 1) != 1)
	{
		$("#mobile_no").output("手机号码不正确！");
		//alert("手机号码不正确！");return false;
	}
	if(parseInt($("#mobile_no").val()) < 13000000000 || parseInt($("#mobile_no").val()) > 16000000000)
	{
		$("#mobile_no").output("手机号码不正确！");
		//alert("手机号码不正确！");return false;
	}
	if(!isMobil($("#mobile_no").val()))
	{
		$("#mobile_no").output("手机号码不正确！");
		//alert("手机号码不正确！");return false;
	}
	$("span[@name=qq]").remove();
	if($("#qq").val() == "")
	{
		$("#qq").output("请填写您的QQ号码！");
		//alert("请填写您的QQ号码！");return false;
	}
	if(!IsNumeric($("#qq").val()))
	{
		$("#qq").output("QQ号码只能是数字！");
		//alert("QQ号码只能是数字！");return false;
	}
	if($("#qq").val().length < 4)
	{
		$("#qq").output("QQ号码不正确！");
		//alert("QQ号码不正确！");return false;
	}
	$("span[@name=sitename]").remove();
	if($("#sitename").val() == "")
	{
		$("#sitename").output("请填写您的站点名称！(若有多个站点请先填写您的主站点)");
		//alert("请填写您的站点名称！(若有多个站点请先填写您的主站点");return false;
	}
	$("span[@name=url]").remove();
	if($("#url").val() == "")
	{
		$("#url").output("请填写您的站点URL地址！（不需要http://开头）");
		//alert("请填写您的站点URL地址！（不需要http://开头）");return false;
	}
	if(!CheckURL($("#url").val()))
	{
		$("#url").output("请填写正确的URL地址！（不需要http://开头）");
		//alert("请填写正确的URL地址！（不需要http://开头）");return false;
	}
	$("span[@name=type]").remove();
	if($("#type").val() == "")
	{
		$("#type").output("请选择您的站点类型！");
		//alert("请选择您的站点类型！");return false;
	}
	$("span[@name=category]").remove();
	if($("#category").val() == "")
	{
		$("#category").output("请选择站点内容类型！");
		//alert("请选择站点内容类型！");return false;
	}*/
}