function lookup(text, select_id, url, text2, areaname, srcname) {
 // Получаем объект XMLHTTPRequest
 if(!this.http){
     this.http = get_http();
     this.working = false;
 }
 // Запрос
 if (!this.working && this.http) {
  var http = this.http;
  // Если в текстовом поле менее трёх символов - не делаем ничего
  if (text.length <0 ) return;
  //добавляем закодированный текст в URL запроса
  url = url + "?text="+encodeURIComponent(text)
  if (text2)    url = url + "&text2="+encodeURIComponent(text2)
  if (areaname) url = url + "&areaname="+encodeURIComponent(areaname);
//    document.getElementById(select_id).innerHTML='Выполнение запроса...';
  //создаём запрос
  this.http.open("GET", url, true);
  //прикрепляем к запросу функцию-обработчик событий
  this.http.onreadystatechange = function() {
   // 4 - данные готовы для обработки
   if (http.readyState == 4) {
    fill(select_id, http.responseText);
    this.working = false;
   } else {
    // данные в процессе получения, можно повеселить пользователя сообщениями 
//    document.getElementById(select_id).innerHTML='Выполнение запроса...';
   }
  }
  this.http.send(null);
//            this.working = true;
 }
 if(!this.http){
  alert('Ошибка при создании XMLHTTP объекта!')
 }
}

function get_http(){
  var xmlhttp;
  /*@cc_on
  @if (@_jscript_version >= 5)
   try {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
   } catch (e) {
    try {
     xmlhttp = new 
     ActiveXObject("Microsoft.XMLHTTP");
    } catch (E) {
     xmlhttp = false;
    }
   }
  @else
   xmlhttp = false;
  @end @*/
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
   try {
    xmlhttp = new XMLHttpRequest();
   } catch (e) {
    xmlhttp = false;
   }
  }
  return xmlhttp;
}

function fill (select_id, data){
 // поле SELECT в переменную в виде объекта	
 var outp = document.getElementById(select_id);
 outp.innerHTML=data;
}

