//sUrl = "/faq_answers/";

        //функция возвращает экземпляр класса XMLHttpRequest
		String.prototype.trim = function() {
    return this.replace(/^\s+|\s+$/g, "");
};
var sUrl; //= 'menu/';		
var elid;
//var np;
        function getHTTPRequestObject() {
            var xmlHttpRequest;
	        if (typeof ActiveXObject != 'undefined') {
		        xmlHttpRequest = new ActiveXObject('Microsoft.XMLHTTP');
	        } else if (typeof XMLHttpRequest != 'undefined') {
		        xmlHttpRequest = new XMLHttpRequest();
	        } else {
		        xmlHttpRequest = false;
	        }
            return xmlHttpRequest;
        }

        var httpRequester = getHTTPRequestObject(); //Рабочий экземпляр класса XMLHttpRequest

        var READY_STATE_COMPLETE=4;

        //выполняет асинхронный GET
		function inserthtml(ajaxUrl,sUrl,elid1){
			elid=elid1;
			//ajaxUrl='directory/'+ajaxUrl;
			ajaxUrl=sUrl+ajaxUrl;
			makeAJAXCall(ajaxUrl);
		}
        function makeAJAXCall(ajaxUrl){
		
            if (httpRequester) {
                httpRequester.open("GET", ajaxUrl, true);
                httpRequester.onreadystatechange = processResponse;
                httpRequester.send(null);
            }
        }

        //CallBack-функция. Выводит полученные асинхронно данные или сообщение об ошибке
        function processResponse() {
            if (httpRequester.readyState == READY_STATE_COMPLETE) {
                if (httpRequester.status==200) {
                    printToPage (httpRequester.responseText);
                } else {
                    var message = "Problem retrieving data. requestStatus="+httpRequester.status+". Message="+httpRequester.statusText;
                    printToPage ("<font color=\"red\">"+message+"</font>");
                }
            }
        }

        //Выводим переданный HTML в элемент с id=elid
        function printToPage(value){
            resultDiv = document.getElementById(elid);
            resultDiv.innerHTML = value;
        }
		
		