Dawno nie pisałem stron, teraz kiedy potrzebuję prostą stronę zrobić to mam jakiś dziwny problem z AJAXem czysto JSowym. Pole readyState obiektu ajax równa się 4 tak jak ma być, ale pole status = 0. Co zrobić by temu zaradzić?
<!DOCTYPE html>
<script type="text/javascript"> var State = { // enumerator JS'owski. To są stany naszej aplikacji HTMLowskiej
Input: 0,
ShowingForm: 1
};
var applicationState = State.Input; // na początku stan Input, bo chcemy wprowadzić dane
var frame;
function init() {
frame = document.getElementById("frame");
renderPage();
}
function getAJAXObject() {
if(window.XMLHttpRequest) // code for IE7+, Firefox, Chrome, Opera, Safari
return new XMLHttpRequest();
else // code for IE6, IE5
return new ActiveXObject("Microsoft.XMLHTTP");
}
function renderPage() {
switch(applicationState) {
case State.Input:
var ajax = getAJAXObject();
ajax.onreadystatechange = function() {
if(ajax.readyState == 4 && ajax.status == 200) {
frame.innerHTML = "Wczytano";
} else frame.innerHTML = "Problem " + ajax.readyState + "; " + ajax.status + "; " + ajax.statusText;
}
ajax.open("GET", 'page_input.html', true);
ajax.send(null);
break;
case State.ShowingForm:
alert("xd");
break;
}
}
body { margin: 0; padding: 0; }
#frame { width: 800px; height: 600px; border: 1px solid black; margin: 100px auto 0 auto; }