function chooseProvinceEtc(obj){
	// obj.triggerId     触发选择元素的选择器, 即存放最终选择结果的选择器, 该元素需要至少有相对定位属性	
	// obj.originalId    原先的纯文字元素的选择器, 选填
	
	// 如果正在选择省市县,则不执行以下
	if( $(obj.triggerId).find('.chooseProvinceEtcDomStr').length>0 ){
		return;
	};
	
	// 向触发元素里添加选择省市县的元素
	var chooseProvinceEtcDomStr = '<div class="chooseProvinceEtcDomStr"><div class="chooseProvinceEtcContentParent"><div class="chooseProvinceEtcDomStr-top"><span class="chooseProvinceEtcDomStr-topProvince active">省份</span><span class="chooseProvinceEtcDomStr-topCity">市</span><span class="chooseProvinceEtcDomStr-topCounty">区县</span><p>×</p></div><div class="chooseProvinceEtcDomStr-content"></div></div></div>';
	$(obj.triggerId).find('.chooseProvinceEtcDomStr').remove().end().append(chooseProvinceEtcDomStr);
	
	// 获取省市县方法
	function getProvinceEtcData(parentId,tip,alreadyCheckPlace){
		var resultData = [];
		$.ajax({
			url:'/orgbaseInfo/department/doFindByParentId',
			type:'get',
			data:{
				'parentId':parentId
			},
			async:false,
			success:function(data){
				if( data.success ){
					resultData = data.data;
				}else{
					new $.zui.Messager('查询'+tip+'失败:'+data.msg, {
					    type: 'danger'
					}).show();
				}
			},
			error:function(status){
				new $.zui.Messager('查询'+tip+'时出错:'+status, {
				    type: 'danger'
				}).show();	
			}
		});
		return resultData;
	};
	
	// 填充省数据到页面上
	function fillProvinceData(){
		var provinceData = getProvinceEtcData(1,'省份');
		$(obj.triggerId).find('.chooseProvinceEtcDomStr-content').empty();
		for( var i=0;i<provinceData.length;i++ ){
			if( $(obj.triggerId).find('.resultprovince') && $(obj.triggerId).find('.resultprovince').attr('provinceid') == provinceData[i].id ){// 已选中的要加粗显示
				$(obj.triggerId).find('.chooseProvinceEtcDomStr-content').append('<span class="provincespan active" provinceid="'+provinceData[i].id+'" deptCode="'+provinceData[i].deptCode+'">'+provinceData[i].name+'</span>')
			}else{
				$(obj.triggerId).find('.chooseProvinceEtcDomStr-content').append('<span class="provincespan" provinceid="'+provinceData[i].id+'" deptCode="'+provinceData[i].deptCode+'">'+provinceData[i].name+'</span>')
			};
		};
		i = null;
	};
	fillProvinceData();
	
	// 填充市数据到页面上
	function fillCityData(pid,pcode,pname,source){
		if( source != 'top' ){
			$(obj.triggerId).find('.resultprovince,.resultcity,.resultcounty').remove();
			$(obj.triggerId).append('<span class="resultprovince" provinceid="'+pid+'" deptCode="'+pcode+'">'+pname+'</span>');
		};
		var cityData = getProvinceEtcData(pid,'市');
		$(obj.triggerId).find('.chooseProvinceEtcDomStr-content').empty();
		for( var i=0;i<cityData.length;i++ ){
			if( $(obj.triggerId).find('.resultcity') && $(obj.triggerId).find('.resultcity').attr('cityid') == cityData[i].id ){// 已选中的要加粗显示
				$(obj.triggerId).find('.chooseProvinceEtcDomStr-content').append('<span class="cityspan active" cityid="'+cityData[i].id+'" deptCode="'+cityData[i].deptCode+'">'+cityData[i].name+'</span>')
			}else{
				$(obj.triggerId).find('.chooseProvinceEtcDomStr-content').append('<span class="cityspan" cityid="'+cityData[i].id+'" deptCode="'+cityData[i].deptCode+'">'+cityData[i].name+'</span>')
			}
		};
		i = null;
	};
	
	// 选择省后获取市信息
	$(obj.triggerId).find('.chooseProvinceEtcContentParent').off('click').on('click','.provincespan',function(){
		$(obj.triggerId).find(obj.originalId).remove();
		fillCityData($(this).attr('provinceid'),$(this).attr('deptCode'),$(this).text());
		$(obj.triggerId).find('.chooseProvinceEtcDomStr-top').find('span').removeClass('active');
		$(obj.triggerId).find('.chooseProvinceEtcDomStr-top').find('span.chooseProvinceEtcDomStr-topCity').addClass('active');
		return false;
	});
	
	// 填充区县数据到页面上
	function fillCountyData(ciid,cicode,ciname,source){
		if( source != 'top' ){
			$(obj.triggerId).find('.resultcity,.resultcounty').remove();
			$(obj.triggerId).append('<span class="resultcity" cityid="'+ciid+'" deptCode="'+cicode+'">-'+ciname+'</span>');
		};
		var countyData = getProvinceEtcData(ciid,'区县');
		$(obj.triggerId).find('.chooseProvinceEtcDomStr-content').empty();
		for( var i=0;i<countyData.length;i++ ){
			if( $(obj.triggerId).find('.resultcounty') && $(obj.triggerId).find('.resultcounty').attr('countyid') == countyData[i].id ){// 已选中的要加粗显示
				$(obj.triggerId).find('.chooseProvinceEtcDomStr-content').append('<span class="countyspan active" countyid="'+countyData[i].id+'" deptCode="'+countyData[i].deptCode+'">'+countyData[i].name+'</span>')
			}else{
				$(obj.triggerId).find('.chooseProvinceEtcDomStr-content').append('<span class="countyspan" countyid="'+countyData[i].id+'" deptCode="'+countyData[i].deptCode+'">'+countyData[i].name+'</span>')
			}
		};
		i = null;
	};
	
	// 选择市后获取区县信息
	$(obj.triggerId).find('.chooseProvinceEtcDomStr').off('click').on('click','.cityspan',function(){
		fillCountyData($(this).attr('cityid'),$(this).attr('deptCode'),$(this).text());
		$(obj.triggerId).find('.chooseProvinceEtcDomStr-top').find('span').removeClass('active');
		$(obj.triggerId).find('.chooseProvinceEtcDomStr-top').find('span.chooseProvinceEtcDomStr-topCounty').addClass('active');
		return false;
	});
	
	// 选择区县后关闭选择框
	$(obj.triggerId).find('.chooseProvinceEtcDomStr-content').off('click').on('click','.countyspan',function(){
		$(obj.triggerId).find('.resultcounty').remove();
		$(obj.triggerId).append('<span class="resultcounty" countyid="'+$(this).attr('countyid')+'" deptCode="'+$(this).attr('deptCode')+'">-'+$(this).text()+'</span>');
		$(obj.triggerId).find('.chooseProvinceEtcDomStr').remove();
		return false;
	});
	
	// 关闭按钮
	$(obj.triggerId).find('.chooseProvinceEtcDomStr-top p').click(function(){
		$(obj.triggerId).find('.chooseProvinceEtcDomStr').remove();
		return false;
	});
	
	// 点击头部的省市县切换
	$(obj.triggerId).find('.chooseProvinceEtcDomStr-top span').click(function(){
		if( $(this).hasClass('chooseProvinceEtcDomStr-topProvince') ){// 省
			if( $(obj.triggerId).find('.provincespan').length<=0 ){
				fillProvinceData();
				$(obj.triggerId).find('.chooseProvinceEtcDomStr-top span').removeClass('active');
				$(this).addClass('active');
			};
		};
		if( $(this).hasClass('chooseProvinceEtcDomStr-topCity') ){// 市
			if( $(obj.triggerId).find('.resultprovince').length<=0 ){
				new $.zui.Messager('请选择省', {
				    type: 'danger'
				}).show();
			}else{
				if( $(obj.triggerId).find('.cityspan').length<=0 ){
					fillCityData($(obj.triggerId).find('.resultprovince').attr('provinceid'),$(obj.triggerId).find('.resultprovince').attr('deptCode'),$(obj.triggerId).find('.resultprovince').text(),'top');
					$(obj.triggerId).find('.chooseProvinceEtcDomStr-top span').removeClass('active');
					$(this).addClass('active');
				}
			};
		};
		if( $(this).hasClass('chooseProvinceEtcDomStr-topCounty') ){// 县
			if( $(obj.triggerId).find('.resultcity').length<=0 ){
				new $.zui.Messager('请选择市', {
				    type: 'danger'
				}).show();
			}else{
				if( $(obj.triggerId).find('.countyspan').length<=0 ){
					fillCountyData($(obj.triggerId).find('.resultcity').attr('cityid'),$(obj.triggerId).find('.resultcity').attr('deptCode'),$(obj.triggerId).find('.resultcity').text(),'top');
					$(obj.triggerId).find('.chooseProvinceEtcDomStr-top span').removeClass('active');
					$(this).addClass('active');
				}
			};
		};
	});
	
	// 阻止冒泡
	$(obj.triggerId).find('.chooseProvinceEtcDomStr').click(function(){
		return false;
	});
	
};