Переформулирую:
PHP код:
<?php
function ajax(val) {
xmlHttp.open('post', link, true);
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlHttp.onreadystatechange = ajax_result;
xmlHttp.send('values=' + val);
}
function ajax_result() {
if(xmlHttp.readyState == 0 || xmlHttp.readyState == 1 || xmlHttp.readyState == 2 || xmlHttp.readyState == 3) {
// тут у мну лоадинг должен идти, пока ответ полностью не получил.
box("<img src='" + site + "/images/loading.gif'>");
}
else if (xmlHttp.readyState == 4) {
// реализация дальше ........
}
}
В чем проблема: Вот я открыл страницу. И первый раз использую ajax. Так вот в первый раз Гугл и Опера не опознает readyState == 0/1/2/3. Только после одной загрузки, он уже начинает лоадинг показывать, если недокачалось. А так ничего не делает, ждет просто пока будет = 4. Как-то так=)
Добавлено через 13 часов 29 минут
Проблема даже не в readyState. Убрал условие, сделал так:
PHP код:
<?php
function ajax_result() {
// тут у мну лоадинг должен идти, пока ответ полностью не получил (убрано условие)
box("<img src='" + site + "/images/loading.gif'>");
// если получили полный результат
if (xmlHttp.readyState == 4) {
// реализация дальше ........
}
}