﻿
//数据
/*var arrCity = [
"全国,0","北京,201","上海,2401","广州,501","武汉,1201","成都,2501","重庆,3101","天津,2601","杭州,3001","郑州,1001","合肥,101","长沙,1301","济南,2101","青岛,2102","南京,1501",
"深圳,502","西安,2301","太原,2201","石家庄,901","长春,1401","哈尔滨,1101","沈阳,1701","福州,301","东莞,504","佛山,518","秦皇岛,905","昆明,2901","大连,1708","苏州,1502",
"南昌,1601","杭州,3001","宁波,3002","淄博,2109","洛阳,1002","金华,3006","温州,3003","徐州,1518","无锡,1503","银川,1901","兰州,401","大庆,1102","烟台,2103",
"吉林,1402","唐山,902","保定,910","无锡,1503",
"--------,-1","浙江,30","河南,10","安徽,1","辽宁,17","江苏,15","河北,9","福建,3","山西,22","云南,29","吉林,14","内蒙古,18","黑龙江,11","广西,6","陕西,23","江西,16",
"新疆,28","贵州,7","甘肃,4","海南,8","宁夏,19","西藏,27","青海,20","河南,10","四川,25","山东,21","广东,5","湖北,12","湖南,13"
];
*/
 var arrCity = ["全国,0","北京,201","上海,2401","广州,501","武汉,1201","成都,2501","重庆,3101","天津,2601","杭州,3001","郑州,1001","合肥,101","长沙,1301","济南,2101","青岛,2102","南京,1501","深圳,502","西安,2301","太原,2201","石家庄,901","长春,1401","哈尔滨,1101","沈阳,1701","福州,301","东莞,504","佛山,518","秦皇岛,905","昆明,2901","大连,1708","苏州,1502","南昌,1601","杭州,3001","郑州,1001","宁波,3002","淄博,2109","洛阳,1002","金华,3006","温州,3003","徐州,1518","无锡,1503","银川,1901","兰州,401","大庆,1102","烟台,2103","吉林,1402","唐山,902","保定,910","无锡,1503","--------,-1","浙江,30","河南,10","安徽,1","辽宁,17","浙江,30","江苏,15","河北,9","福建,3","山西,22","云南,29","吉林,14","内蒙古,18","黑龙江,11","广西,6","陕西,23","江西,16","新疆,28","贵州,7","甘肃,4","海南,8","宁夏,19","西藏,27","青海,20","河南,10","四川,25","山东,21","广东,5","湖北,12","湖南,13"];


var CarSearcher={
    SelCity:false,
    RadioRegionIn:false,
    RadioRegionOut:false,
    SelBrand:false, 
    
    //初始化城市列表
    initCity:function(){
	    for(var j=0;j<arrCity.length;j++){
		    this.SelCity.options.add( splitToOption(arrCity[j]));
	    }    
    },
    //处理地区选择点击事件
    onGetBrandList:function(evt){ 
        if(typeof evt=="undefined") evt=window.event;
        var  src = Browser.isIE ? evt.srcElement : evt.target ;        
        var inoutchar = (src.value=="in") ? "1" :"2";
        CarSearcher.getBrandList(inoutchar);   
    },    
    //根据地区取车型列表
    getBrandList:function(inout){
        var requestUrl = "/searchbox/brandquery.aspx?region=" + inout; 
        if( CarSearcher.initXMLHTTPRequest() !=null){           
            //CarSearcher.sendRequest(requestUrl,"1","GET",CarSearcher.getBrandListResult,1);    
             CarSearcher.sendRequest(requestUrl,"1","GET",CarSearcher.getBrandListResult,0);    
        }
    }, 
    //配合getBrandList，用ajax方法取车型列表
    getBrandListResult:function(responseTEXT){ 
        
        var optvalue,opttext;
        CarSearcher.SelBrand.options.length=0;
        CarSearcher.SelBrand.options.add(new Option("请选择品牌","-1"));  
 
        var lists= eval(responseTEXT);
        for(var i=0;i<lists.length;i++){  
            CarSearcher.SelBrand.options.add(new Option(lists[i][0],lists[i][1]));           
        } 
    } , 
    //ajax 取XMLHTTPRequest
    initXMLHTTPRequest : function (){ //获取 XMLHTTP 对象
        var xRequest = null;      
        try {
            //ie=true;
            xRequest = new ActiveXObject("Msxml2.XMLHTTP");
            return xRequest;
        } 
        catch (othermicrosoft) {
            try {
                xRequest = new ActiveXObject("Microsoft.XMLHTTP");
                return xRequest;
            } 
            catch (failed) {
                //ie = false;
                try{
                    xRequest = new XMLHttpRequest();
                    return xRequest;
                }
                catch(error){
                    alert(error);
                    return null;
                }
            }
        } 
     } ,
     //ajax 发送请求
     sendRequest:function(url,params,HttpMethod,handler,resulttype){  //发送 异步xml requesst   
        if(!HttpMethod){
            HttpMethod = "GET";
        }
        
        var req = CarSearcher.initXMLHTTPRequest(); 
        if(req){           
            req.onreadystatechange = function(hanlder){ 
                var READY_STATE_UNINITIALIZED=0;
                var READY_STATE_LOADING=1;
                var READY_STATE_LOADED=2;
                var READY_STATE_INTERACTIVE=3;
                var READY_STATE_COMPLETE=4;
                var RESULT_AS_TEXT=0;
                var RESULT_AS_XML=1;
                var RESULT_AS_STREAM=2;
                var RESULT_AS_ARRAY=4; 
                 
                var ready = req.readyState;
                var result = null;
                
             
                if(ready==READY_STATE_COMPLETE){            
                    if(req.status==200){    
                        if(resulttype== RESULT_AS_TEXT){
                        result= req.responseText;
                        }
                        else if(resulttype== RESULT_AS_XML){                
                            result= req.responseXML;
                        }
                        else if(resulttype== RESULT_AS_STREAM){
                            result= req.responseStream;
                        }
                        else if(resulttype== RESULT_AS_ARRAY){
                            result= req.responseBody;
                        }  
                       
                        handler(result);              
                    }
                    else{
                    //result.value = req.status;
                    }
                }
                else{
                //data = "loading…["+ready+"]";
                }
        
            }
            
            try{
                req.open(HttpMethod,url,true);
            }
            catch(error){
                alert(error);
            }         
            req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
            req.send(null);  
        }
    },
    //加载
    loadAll:function(selCity,radioRegionIn,radioRegionOut,selBrand){
        this.SelCity = selCity;
        this.RadioRegionIn= radioRegionIn;
        this.RadioRegionOut = radioRegionOut;
        this.SelBrand = selBrand;  
        
        try{
            this.RadioRegionIn.addEventListener('click',this.onGetBrandList,false);
            this.RadioRegionOut.addEventListener('click',this.onGetBrandList,false);
//            this.SelBrand.addEventListener('change',this.onGetCarList,false); 
        }
        catch(e){
            try{
                this.RadioRegionIn.attachEvent("onclick",this.onGetBrandList);
                this.RadioRegionOut.attachEvent("onclick",this.onGetBrandList);
//                this.SelBrand.attachEvent("onchange",this.onGetCarList);
        
            }catch(e){}
		}  
		this.initCity();
		this.getBrandList("1");   
    },
    //加载
    loadBrand:function(radioRegionIn,radioRegionOut,selBrand){
        
        this.RadioRegionIn= radioRegionIn;
        this.RadioRegionOut = radioRegionOut;
        this.SelBrand = selBrand;
         
        try{
            this.RadioRegionIn.addEventListener('click',this.onGetBrandList,false);
            this.RadioRegionOut.addEventListener('click',this.onGetBrandList,false);
            
        }
        catch(e){
            try{
                this.RadioRegionIn.attachEvent("onclick",this.onGetBrandList);
                this.RadioRegionOut.attachEvent("onclick",this.onGetBrandList);
            }catch(e){}
		}  
		
		this.getBrandList("1");    
    }
}


 
//通用函数
function splitToOption(str)
{
	var tmpOption = new Option();
	var tmpAry = str.split(",");
	tmpOption.text = tmpAry[0];
	tmpOption.value = tmpAry[1];
	return tmpOption;
}
function $() {
  var elements = new Array();

  for (var i = 0; i < arguments.length; i++) {
    var element = arguments[i];
    if (typeof element == 'string')
      element = document.getElementById(element);

    if (arguments.length == 1)
      return element;

    elements.push(element);
  }

  return elements;
}
/*
Browser Object
*/
var Browser = new Object();
Browser.isMozilla = (typeof document.implementation != 'undefined') && (typeof document.implementation.createDocument != 'undefined') && (typeof HTMLDocument!='undefined');
Browser.isIE = window.ActiveXObject ? true : false;
Browser.isFirefox = (navigator.userAgent.toLowerCase().indexOf("firefox")!=-1);
Browser.isOpera = (navigator.userAgent.toLowerCase().indexOf("opera")!=-1);

     



function SimpleAjax(){
   
    this.initXMLHTTPRequest=function (){ 
        var xRequest = null;      
        try {
           
            xRequest = new ActiveXObject("Msxml2.XMLHTTP");
            return xRequest;
        } 
        catch (othermicrosoft) {
            try {
                xRequest = new ActiveXObject("Microsoft.XMLHTTP");
                return xRequest;
            } 
            catch (failed) {
               
                try{
                    xRequest = new XMLHttpRequest();
                    return xRequest;
                }
                catch(error){
                    alert(error);
                    return null;
                }
            }
        } 
     };
    
     this.sendRequest=function(url,isAsync,HttpMethod,handler,resulttype){    
        if(!HttpMethod){
            HttpMethod = "GET";
        }
        var req = this.initXMLHTTPRequest(); 
        if(req){           
            req.onreadystatechange = function(hanlder){ 
                var READY_STATE_UNINITIALIZED=0;
                var READY_STATE_LOADING=1;
                var READY_STATE_LOADED=2;
                var READY_STATE_INTERACTIVE=3;
                var READY_STATE_COMPLETE=4;
                var RESULT_AS_TEXT=0;
                var RESULT_AS_XML=1;
                var RESULT_AS_STREAM=2;
                var RESULT_AS_ARRAY=4; 
                 
                var ready = req.readyState;
                var result = null;
             
                if(ready==READY_STATE_COMPLETE){            
                    if(req.status==200){    
                        if(resulttype== RESULT_AS_TEXT){
                        result= req.responseText;
                        }
                        else if(resulttype== RESULT_AS_XML){                
                            result= req.responseXML;
                        }
                        else if(resulttype== RESULT_AS_STREAM){
                            result= req.responseStream;
                        }
                        else if(resulttype== RESULT_AS_ARRAY){
                            result= req.responseBody;
                            
                        }   
                        handler(result);              
                    }
                    else{
                    //result.value = req.status;
                    }
                }
                else{
                //data = "loading…["+ready+"]";
                }
        
            }
            
            try{
                req.open(HttpMethod,url,isAsync);
            }
            catch(error){
                alert(error);
            }         
            req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
            req.send(null);  
        }
    }    
}