Thomas: Ajax-Post-Request

Beitrag lesen

Hallo,

Ich bin gerade dabei Ajax zu lernen und versuche hierbei einen Post request auszusenden und wieder auszuwerten. Dazu habe ich eine Funktion geschrieben:

  
<scriptlanguage="javascript" type="text/javascript">  
function postrequest(url,data) {  
  
function auswerten() {  
  if(httpObject.readyState == 4)  <------ Zeile 16!  
  {  
   if(httpObject.status == 200)  
   {  
   result = httpObject.responseText;  
   document.getElementById("ausgabe").innerHTML = result;  
   }  
  }  
}  
  
var httpObject = null;  
try  
{  
 httpObject = new XMLHttpRequest();  
}  
catch (ms)  
{  
 try  
 {  
        httpObject = new ActiveXObject("Msxml2.XMLHTTP");  
    }  
 catch (nonms)  
 {  
     try  
  {  
         httpObject = new ActiveXObject("Microsoft.XMLHTTP");  
     }  
  catch (failed)  
  {  
   httpObject = null;  
  }  
 }  
}  
if (httpObject != null)  
{  
 httpObject.onreadystatechange = auswerten;  
 httpObject.open('POST', url, true);  
 httpObject.setRequestHeader("Content-type", "application/x-www-form-urlencoded");  
 httpObject.setRequestHeader("Content-length", data.length);  
 httpObject.setRequestHeader("Connection", "close");  
 httpObject.send(data);  
}  
var httpObject = null;  
  
  
}  
</script>  

Leider geschiet keine Ausgabe. Das komische ist, dass wenn ich zum beispiel ein alert(""); in die Funktion auswerten setzte klappt alles wie geplant.

  
function auswerten() {  
alert("WENN ICH DAS MACHE KLAPPT ES!");  
  if(httpObject.readyState == 4)  
  {  
   if(httpObject.status == 200)  
   {  
   result = httpObject.responseText;  
   document.getElementById("ausgabe").innerHTML = result;  
   }  
  }  
}  

Ach ja, die Fehlerkonsole sagt:

Fehler: httpObject is null
Quelldatei: http://www.example.com/ajax/test.php
Zeile: 16

Hat jemand eine Idee wie ich dieses Problem lösen kann?

Vielen Dank im Vorraus

Thomas