// Unser Request Objekt global verwendbar.
var http_request = false;

// doRequest(url) Erzeugt ein Requestobjekt abhängig vom Browser
// und stellt eine anfrage an die übergebene URL
function doRequest(url) {
  http_request = false;

  // Testen ob der Browser ein XMLHttpRequest Objekt
  // zur Verfügung stellt. (Mozilla und andere)
  if (window.XMLHttpRequest) {
     http_request = new XMLHttpRequest();
    if (http_request.overrideMimeType) {
      //Das Ergebnis soll als XML-Dokument betrachtet werden.
      http_request.overrideMimeType('text/xml');
    }
  // Wenn der Browser ein IE ist,
  // dann müssen andere Objekte benutzt werden.
  } else if (window.ActiveXObject) {
    try {
      http_request = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      try {
        http_request = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (e) {}
    }
  }

  // Falls kein Request Objekt zur Verfügung steht
  // funktioniert das ganze nicht
  if (!http_request) {
    alert('Es kann kein Request Objekt erzeugt werden.');
    return false;
  }
  // Eine Callbackfunction wird angegeben,
  // die auf events des Request Objekts reagieren soll.
  http_request.onreadystatechange = myHandler;
  http_request.open('GET', url, true);
  http_request.send(null);
}

function myHandler() {
  // Testen ob das Request objekt mit dem laden fertig ist
  if (http_request.readyState == 4) {
    // War die Anfrage erfolgreich / die URL erreichbar ?
    if (http_request.status == 200) {
       ergebnisverarbeiten();
    } else {
       alert('Die URL konnte nicht geöffnet werden.');
    }
  }
}

function ergebnisverarbeiten(){
  ergebnisdiv= document.getElementById('ergebnisfeld')
  ergebnisdiv.innerHTML=http_request.responseText;
}