Próbuję uruchomić tę funkcję, która wysyła żądanie parametru url
, a następnie wysyła tekst odpowiedzi do callback
, który jest funkcją.Ajax nie przejdzie readyState 1, dlaczego?
Wygląda na to, że dostaje się tylko do readyState 1
(dzięki komendom Firebug).
Oto ona:
function Request(url, callback){
if (window.XMLHttpRequest) { // Mozilla, Safari, ...
httpRequest = new XMLHttpRequest();
} else if (window.ActiveXObject) { // IE
httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
} else{
return false;
}
httpRequest.onreadystatechange = function(){
console.log(httpRequest.readyState);
if (httpRequest.readyState == 4) {
callback(httpRequest.responseText);
}
};
console.log(httpRequest, url);
httpRequest.open('GET', url, true);
httpRequest.send(null);
}
Witaj Joe, jestem zainteresowany, jakie było twoje rozwiązanie? Znalazłeś? Moim obejściem tego problemu było przypisanie zdarzenia onload zamiast onreadystatangeange (zobacz szczegóły poniżej w odpowiedziach). –
Nie wiem ... Przepraszam, że nie byłem na stronie przez jakiś czas. Cóż, zadziałało, ale właśnie przełączyłem się na jQuery i działa poprawnie. – kennyisaheadbanger