// Функция, осуществляющая AJAX запрос.
function loadXMLDoc( method, url ){
  if ( window.XMLHttpRequest ) {
    req = new XMLHttpRequest();
    req.onreadystatechange = processReqChange;
    req.open(method, url, true);
    req.send( null );
  } else if ( window.ActiveXObject ) {
    req = new ActiveXObject( "Microsoft.XMLHTTP" );
    if ( req ) {
      req.onreadystatechange = processReqChange;
      req.open( method, url, true );
      req.send( );
    }
  }
}
// Функция, выполняемая при изменении статуса
// запроса, если статус  равен 200, данные получены.
function processReqChange() {
  if ( req.readyState == 4 ) {
    if ( req.status == 200 )
    getModels(req.responseXML.documentElement);

    else
      alert("There was a problem retrieving the XML data:\n" + req.statusText);
  }
}
function onChange( _this,type ) {
    var url = "../ajax/ajax.php?marka=" + encodeURIComponent(_this.value) + "&type=" + type;
    //alert(url);
    loadXMLDoc( "get", url );
}
function getModels( xml ) {
  var type = xml.getElementsByTagName( "type" );
  var res = xml.getElementsByTagName( "res" );
  if (type[0].getAttribute("value")==1){
  var models = xml.getElementsByTagName( "model" );
  var _select = document.getElementById( "model" );
  _select.innerHTML = ""; // Удаляем всех потомков.
  // Создаем список с доступными цветами.
  for ( i=0; i<models.length; i++ ) {
    var option = document.createElement( "option" );
    var optionText = document.createTextNode( models[i].firstChild.data );
    option.appendChild( optionText );
    option.setAttribute( "value",models[i].getAttribute("value") );
    _select.appendChild( option );
  }

  }
  else  {  if(type[0].getAttribute("value")==2){
  //alert(res[0].getAttribute("value"));
  var models2 = xml.getElementsByTagName( "model" );
  var _select2 = document.getElementById( "model2" );
  //document.write(models2);
  _select2.innerHTML = ""; // Удаляем всех потомков.
  // Создаем список с доступными цветами.
  for ( i=0; i<models2.length; i++ ) {
    var option2 = document.createElement( "option" );
    var optionText2 = document.createTextNode( models2[i].firstChild.data );
    option2.appendChild( optionText2 );
    option2.setAttribute( "value",models2[i].getAttribute("value") );
    _select2.appendChild( option2 );
  }
  if (res[0].getAttribute("value")==0 )
			document.getElementById('other').disabled=false;
	else
			document.getElementById('other').disabled=true;

   }
   else{	  var models = xml.getElementsByTagName( "model" );
	  var _select = document.getElementById( "modeltop" );
	  _select.innerHTML = ""; // Удаляем всех потомков.
	  // Создаем список с доступными цветами.
	  for ( i=0; i<models.length; i++ ) {
	    var option = document.createElement( "option" );
	    var optionText = document.createTextNode( models[i].firstChild.data );
	    option.appendChild( optionText );
	    option.setAttribute( "value",models[i].getAttribute("value") );
	    _select.appendChild( option );
	  }   }
}

}

