AJAX OnReadyStateChange IE7

Im Internet Explorer kommt es mit AJAX und dem Eventhandler “onreadystatechange” zu Problemen.

Folgender AJAX Request funktioniert im Mozilla Firefox:
[code]
anfrage = erzeugeAnfrage();
anfrage.open(”POST”, url, false);
anfrage.setRequestHeader(”Content-Type”, “application/x-www-form-urlencoded; charset=UTF-8″);
anfrage.send(null);
anfrage.onreadystatechange = function(param);
[/code]

Dies führt jedoch im Internet Explorer 7 zum Fehler “Nicht implementiert”!

Die Lösung für den Internet Explorer ist den Request folgendermaßen umzubauen:
[code]
anfrage = erzeugeAnfrage();
anfrage.open(”POST”, url, false);
anfrage.setRequestHeader(”Content-Type”, “application/x-www-form-urlencoded; charset=UTF-8″);
anfrage.send(null);
if(anfrage.readyState == 4) function(param);
[/code]

Das Problem liegt darin das der Rückgabewert der Funktion “function” den Rückgabewert von onreadystatechange überschreibt.

Firefox kann damit umgehen…. IE nicht. Leider bin ich nicht genug versiert um den Fehler genauer beschreiben zu können :)

Wer Probleme hat kann sich gerne an mich wenden und ich werde ihm versuchen zu helfen.