function JSLRequest () {
    var reqobj;
    var callback;
    
    
    this.start = function (hostfunc, nr, callback_func) {
    		hostfunc += nr;
				//document.links['permlink'].href='index.php?nr=' + nr;
				var linke = document.links;
				for(var i = 0; i < linke.length; i++){
					if (document.links[i].id == 'permlink'){
						document.links[i].href = 'index.php?nr=' + nr;
					}
				}
				
				try{
					reqobj = new ActiveXObject("Microsoft.XMLHTTP");
				}
				catch(Error){
					try{
						reqobj = new ActiveXObject("MSXML2.XMLHTTP");
					}
					catch(Error){
					 try{
						reqobj = new XMLHttpRequest();
					 }
					 catch(Error){
						//hier auf die alternative verweisen
						window.location="index.php?ajax=no";
					 }
					}
				}
    		
    		
        callback = callback_func;
        reqobj.onreadystatechange = this.handler;
        reqobj.open ("GET", hostfunc, true);
        //reqobj.overrideMimeType('text/xml; charset=UTF-8');
        reqobj.send (null);
    }

    this.handler = function () {
        if (reqobj.readyState == 4) {
            if (reqobj.status == 200) {
                callback(reqobj);
            }
            else {
                callback(reqobj);
            }
        }
    }
}
