address.js 5.15 KB
var address = {
	bindAddrForm : function(callbackFunc) {
		//初始化
		$.formValidator.initConfig({
			formid : "addressForm",
			onsuccess : function() {
				address.saveAddr(callbackFunc);
				return false;
			}
		});
		//收货人姓名
		$("#addressee_name").formValidator({
			onshow : "请输入收货人姓名",
			onfocus : "真实姓名在2到5个汉字之间",
			oncorrect : "输入正确"
		}).inputValidator({
			min : 1,
			max : 12,
			onerror : "真实姓名在2到5个汉字之间,请确认"
		}).regexValidator({
			regexp : "^[\u4e00-\u9fa5]{2,5}$",
			onerror : "真实姓名至少2个中文,最多5个中文"
		});
		// $('#area_code').formValidator({onshow:"请选择地址",onfocus:"请选择地址",oncorrect:"输入正确"}).SelectValidator({onerror:
		// "请选择地址!"});
		$('#address').formValidator({
			onshow : "请填写详细地址",
			onfocus : "请填写详细地址",
			oncorrect : "输入正确"
		}).inputValidator({
			min : 2,
			onerror : "请填写详细地址"
		});
		//邮编
		$('#zip_code').formValidator({
			onshow : "请输入收货人所在地邮编号",
			onfocus : "请输入收货人所在地邮编号",
			oncorrect : "输入正确",
			onempty: "请输入收货人所在地邮编号",
			empty: false
		}).regexValidator({
			regexp : regexEnum.zipcode,
			onerror : "你输入的邮编式不正确"
		});
		//电话
		$('#phone').formValidator({
			empty:true,
			onshow:"请输入你的联系电话,可以为空哦",
			onfocus:"格式例如:0577-88888888",
			oncorrect:"输入正确",
			onempty:"你真的不想留联系电话了吗?"
		}).fullOneValidator({
			relateid : 'mobile',
			onerror : '固话和手机号至少填一项'
		}).regexValidator({
			regexp:"^(([0\\+] \\d{2,3}-)?(0\\d{2,3})-)?(\\d{7,8})(-(\\d{3,}))?$",
			onerror:"你输入的联系电话格式不正确"
		});
		//手机
		$('#mobile').formValidator({
			onshow : "填写手机号便于接收发货和收货通知",
			onfocus : "请输入手机号,如1360000000",
			oncorrect : "输入正确",
			onempty: '请输入手机号,如1360000000'
		}).inputValidator({
			min:11,
			max:11,
			onerror:"手机号码必须是11位的,请确认"
		}).regexValidator({
			regexp:"mobile",
			datatype:"enum",
			onerror : "您输入的手机号格式不正确"
		});

		$('#email').formValidator({
			onshow : "用来接收订单提醒邮件,便于您及时了解订单状态",
			onfocus : "用来接收订单提醒邮件,便于您及时了解订单状态",
			oncorrect : "输入正确"
		}).regexValidator({
			regexp : regexEnum.email,
			onerror : "你输入的邮件地址格式不正确"
		});
		
	},
	
	clearAddrForm : function(){
		$('#addressee_name').val("");
		$('#address').val("");
		$('#zip_code').val("");
		$('#phone').val("");
		$('#mobile').val("");
		$('#email').val("");
		$('#addrId').val(0);
		$('#btnReset').hide();
		$('#curFormStatus').html('添加新地址');
	},
	
	editAddr : function(id){
		$.getJSON('/home/address/getaddr?id=' + id, function(jsonData){
			if(jsonData.code == 200){
				$('#curFormStatus').html('修改地址');
				$('#addressee_name').val(jsonData.data.addressee_name);
				QGlobal.Address.loadAllData(jsonData.data.area_code, {});
				$('#address').val(jsonData.data.address);
				$('#zip_code').val(jsonData.data.zip_code);
				$('#phone').val(jsonData.data.phone);
				$('#mobile').val(jsonData.data.mobile);
				$('#email').val(jsonData.data.email);
				$('#addrId').val(jsonData.data.id);
				$('#btnReset').show();
			}			
		});
	},
	
	saveAddr : function(callbackFunc) {
		var addressee_name = $('#addressee_name').val();
		var address = $('#address').val();
		var zip_code = $('#zip_code').val();
		var phone = $('#phone').val();
		var mobile = $('#mobile').val();
		var email = $('#email').val();
		var area_code = $('#area_code').val();
		//var default_addrid = $('#default_addrid').val();
		var id = $('#addrId').val();
		var pars = 'addressee_name=' + encodeURI(addressee_name);
		pars += '&address=' + encodeURI(address);
		pars += '&zip_code=' + zip_code;
		pars += '&phone=' + phone;
		pars += '&mobile=' + mobile;
		pars += '&email=' + email;
		pars += '&area_code=' + area_code;
		pars += '&id=' + id;
		$.ajax({
			type : "POST",
			url : '/home/address/save',
			data : pars,
			dataType : 'json',
			success : function(jsonData) {
				if(jsonData.code == 200){
					eval(callbackFunc +'(' + jsonData.data.id + ',' + jsonData.data.isNew + ')');			
				}else{
					alert(jsonData.message);
				}
			}
		});
	},
	//删除地址
	delAddr : function(addrId){
		$.getJSON('/home/address/del?id=' + addrId, function(jsonData){
			if(jsonData.code == 200){
				$('#layout_' + addrId).remove();
			}else{
				alert('删除失败');
			}			
		});
	},
	
	setDefaultAddr : function(addrId) {
		$.getJSON('/home/address/setdefault?id=' + addrId, function(jsonData){
			if(jsonData.code == 200){
				$('#button_' + jsonData.data.preDefaultId).attr('class', 'btn_c3');
				$('#spanDefault' + jsonData.data.preDefaultId).html('设为常用地址');
				$('#button_' + jsonData.data.curDefaultId).attr('class', 'btn_c2');
				$('#spanDefault' + jsonData.data.curDefaultId).html('已设为常用地址');
			} else {
				alert('设置失败');
			}
			
		});
	}
}