var objSorts;
var objText;
var objValue;


function createRequest()
{
	var request; 
    try
    {
        request = new XMLHttpRequest();
    }
    catch(trymicrosoft)
    {
        try
        {
            request = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch(othermicrosoft)
        {
            try
            {
                request = new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch(failed)
            {
                request = null;
            }
        }
    }
    if(request == null)
    {
        alert("Error,Creating request object!");
    }
    return request;
}


function initSelecter() {

    objSorts = document.getElementById("load_areaid");
    objValue = document.getElementById("areaid");
    objText = document.getElementById("areatext");
   var pn = ['省','市','县(区)','镇(乡、街道)','村'];
   for(var sel=0;sel<5;sel++){
	   var objSelect = document.createElement("select");
       objSelect.setAttribute("name", "PostionSelecter_" + sel);
       objSelect.setAttribute("id", "PostionSelecter_" + sel);
       objSelect.setAttribute("selid", sel);
       objSelect.setAttribute("onchange", "getChildSorts(this);");
       objSelect.onchange = function() {
	      getChildSorts(this);
       }       
       objSelect[objSelect.length] = new Option("选择"+pn[sel],"");
       objSorts.appendChild(objSelect);
       objSelect.style.width="150px";
      
   }
   
   getSorts('ajax.php?f=loadxml',0);   
   if(objValue.value != ""){ 
       if(objValue.value.length>=2){
   	    getSorts('ajax.php?f=loadxml&areacode='+objValue.value.substr(0,2),1);
        }
       if(objValue.value.length>=4 ){
    	    getSorts('ajax.php?f=loadxml&areacode='+objValue.value.substr(0,4),2);
       }
       if(objValue.value.length>=6){
      	   getSorts('ajax.php?f=loadxml&areacode='+objValue.value.substr(0,6),3);
       }
       if(objValue.value.length>=9){
       	getSorts('ajax.php?f=loadxml&areacode='+objValue.value.substr(0,9),4);
       }
  
   }  
 
}



function getSorts(strURL,sel) {        
  
        var xml;
     var  request =  createRequest();
       strURL = "/"+strURL+"&"+Math.random();
     
        request.open("GET", strURL, true);
        if (request) {
        	request.onreadystatechange = function() {
                    if (request.readyState == 4 && request.status == 200) {
                            xml = request.responseXML;
                                var arrIDs = xml.getElementsByTagName("ID");
                                var arrTitles = xml.getElementsByTagName("TITLE");
                                if (arrIDs.length > 0) {
                                	    var objSelect  = document.getElementById("PostionSelecter_"+ sel);
                                	    objSelect.length=1;
                                        for (var l = 0; l < arrIDs.length; l++) {
                                              var  objOption = document.createElement("option");
                                                objOption.setAttribute("value", arrIDs[l].childNodes[0].nodeValue);
                                                if(objValue && arrIDs[l].childNodes[0].nodeValue ==  objValue.value.substr(0,arrIDs[l].childNodes[0].nodeValue.length)){
                                                	objOption.selected = true;
                                                }
                                                
                                               var objT = document.createTextNode(arrTitles[l].childNodes[0].nodeValue);
                                                
                                                objOption.appendChild(objT);
                                                
                                                objSelect.appendChild(objOption);
                                        }                                                                                             
                            
                                }
                        }
                }
        }
    request.send(null);
}

function getChildSorts(Selectobj) {
    var myValue = Selectobj.options[Selectobj.selectedIndex].value;

    //清除当前选项后续的选择项
    for(var sel=Selectobj.selid+1;sel<5;sel++){
        var selobj = document.getElementById("PostionSelecter_"+sel);   
        if(selobj)
        selobj.options.length=1;
    }

    if (myValue != "" && myValue > 0) {               
            objValue.value = myValue;
            if(objText){
              objText.value = "";
              var sel_0 = document.getElementById("PostionSelecter_0");
              var sel_1 = document.getElementById("PostionSelecter_1");
              var sel_2 = document.getElementById("PostionSelecter_2");
              var sel_3 = document.getElementById("PostionSelecter_3");
              var sel_4 = document.getElementById("PostionSelecter_4");
              if(sel_0.options[sel_0.selectedIndex].value){            	  
            	  objText.value = sel_0.options[sel_0.selectedIndex].text;
              }
              if(sel_1.options[sel_1.selectedIndex].value){            	  
            	  objText.value += "/"+sel_1.options[sel_1.selectedIndex].text;
              }
              if(sel_2.options[sel_2.selectedIndex].value){            	  
            	  objText.value += "/"+sel_2.options[sel_2.selectedIndex].text;
              }
              if(sel_3.options[sel_3.selectedIndex].value){            	  
            	  objText.value += "/"+sel_3.options[sel_3.selectedIndex].text;
              }
              if(sel_4.options[sel_4.selectedIndex].value){            	  
            	  objText.value += "/"+sel_4.options[sel_4.selectedIndex].text;
              }
            }

            if(document.getElementById("PostionSelecter_"+(parseInt(Selectobj.getAttribute("selid"))+1))){
             var strURL = "ajax.php?f=loadxml&areacode=" + myValue; 

             getSorts(strURL,parseInt(Selectobj.getAttribute("selid"))+1);
            }
 
    }else{
    	
    	return false;
    }
    
}


window.onload = function(){initSelecter() ;}
