﻿//Global Variable
if(typeof(SLS_CityList) == 'undefined')
	var SLS_CityList = function(){};

SLS_CityList.prototype.SetOptionText = function(CityObj,the_array)
{
  this.SetFirstOption(CityObj,"");
	CityObj.options.length = the_array.length + 1;
	for (loop=0; loop < the_array.length; loop++)
	{
		var val = this.SplitStr(the_array[loop]);
		CityObj.options[loop+1].text = " "  + val[0] + " ";
		CityObj.options[loop+1].value ="" + val[1];
	}
	CityObj.selectedIndex=0;
}
SLS_CityList.prototype.OnSelectProvince = function(ProvObj,CityObj,ControlObj)
{
	var sel = ProvObj.selectedIndex;
	if(sel > 0)
	{
		the_array=eval("this.Citys"+(sel-1));
		this.SetOptionText(CityObj,the_array);

		if(ControlObj != null && typeof(ControlObj) != 'undefined')
			ControlObj.value = ProvObj.options[sel].value;
	}
}
SLS_CityList.prototype.OnSelectCity = function(ProvObj,CityObj,ControlObj)
{
	var sel = CityObj.selectedIndex;
	if(ControlObj != null && typeof(ControlObj) != 'undefined')
		ControlObj.value = (0==sel) ? ProvObj.value : CityObj.options[sel].value;
}

SLS_CityList.prototype.SetFirstOption = function(Obj,text)
{
	Obj.options.length = 1;
	if(text != "")
	    Obj.options[0].text = text;
	else
	    Obj.options[0].text = " 全部 ";
		
	Obj.options[0].value = "";
}
SLS_CityList.prototype.SplitStr = function(Obj)
{
	var val = Obj.split(":");
  return val;
}

InitSelect = function (ProvObj,CityObj,ControlObj,initcity)
{
  if(typeof(SLS_CL) != 'undefined')
  	SLS_CL = null;
  var SLS_CL = new SLS_CityList;
	SLS_CL.InitList();
	var _ProvObj = document.getElementById(ProvObj);
	var _CityObj = document.getElementById(CityObj);
	var _ControlObj = document.getElementById(ControlObj);
	
  SLS_CL.SetFirstOption(_ProvObj," 请选择 ");
  
	_ProvObj.options.length = SLS_CL.Provs.length +1;
	for (loop=0; loop < SLS_CL.Provs.length; loop++)
	{
		var val = SLS_CL.SplitStr(SLS_CL.Provs[loop]);
		_ProvObj.options[loop+1].text= " " + val[0] + " ";
		_ProvObj.options[loop+1].value = val[1];
	}	
	_ProvObj.selectedIndex=0;
	
	SLS_CL.SetFirstOption(_CityObj,"");

	if(_ProvObj.addEventListener)
	{ // Mozilla, Netscape, Firefox
 		_ProvObj.addEventListener("change",  function(e) {SLS_CL.OnSelectProvince(_ProvObj,_CityObj,_ControlObj); },false);
 		_CityObj.addEventListener("change",function(e) { SLS_CL.OnSelectCity(_ProvObj,_CityObj,_ControlObj); },false);
	}
	else
	{ // IE
   		_ProvObj.attachEvent('onchange', function(){SLS_CL.OnSelectProvince(_ProvObj,_CityObj,_ControlObj);});
   		_CityObj.attachEvent('onchange', function(){ SLS_CL.OnSelectCity(_ProvObj,_CityObj,_ControlObj);});
	}
	if(typeof(initcity) == 'undefined') return;

  var val;
	for(loop=0; loop < SLS_CL.Provs.length; loop++)
	{
		the_array=eval("SLS_CL.Citys"+loop);
		for(loop2=0; loop2 < the_array.length; loop2++)
		{
			val = SLS_CL.SplitStr(the_array[loop2]);
			if(val[1] == initcity)
			{
				_ProvObj.selectedIndex = 1 + loop;
				SLS_CL.SetOptionText(_CityObj,the_array);
				_CityObj.selectedIndex= 1 + loop2;
				SLS_CL.OnSelectCity(_ProvObj,_CityObj,_ControlObj);
				return;
			}
		}
		val = SLS_CL.SplitStr(SLS_CL.Provs[loop]);
		if(val[1] == initcity)
		{
			_ProvObj.selectedIndex = 1 + loop;
			SLS_CL.OnSelectProvince(_ProvObj,_CityObj,_ControlObj);
			return;
		}	
	}	
}
