Я выполняю несколько запросов ajax на странице, нет ничего плохого в кодах, о которых я знаю. Просто, когда до начала выполнения вызова ajax и пользователь выбирает перезагрузку или обновление, браузер возвращает ошибку состояния 0 как в ff3, так и в chrome 14 (IE6 + не имеет этой проблемы).
Поскольку у меня много запросов, браузер будет предупреждать несколько раз и может быть очень раздражающим. Я читал, что это ошибка mozilla / firefox 3, и она могла быть исправлена в более поздних версиях ff, но в chrome 14 эта ошибка все еще сохраняется. Но я строю для совместимости с ff3 и chrome. Есть сообщение об ошибке Здесь
Кто-нибудь знает, как подавить ошибку состояния только для перезагрузки / обновления?
ТИА
мои коды ajax
function createXHR() {
var xhrObj;
if (window.XMLHttpRequest) {
// branch for native XMLHttpRequest object - Mozilla, IE7
try {
xhrObj = new XMLHttpRequest();
}
catch (e) {
alert("Your browser does not support this website!");
xhrObj = null;
}//close catche
} //close if
else if (window.ActiveXObject) {
// branch for IE/Windows ActiveX version
try {
xhrObj = new ActiveXObject("Msxml2.XMLHTTP");
} //try
catch(e) {
try{
xhrObj = new ActiveXObject("Microsoft.XMLHTTP");
}//inner try
catch(e) {
alert("Your browser does not support this website!");
xhrObj = null;
} //inner catch
}//catch
} //else if
return xhrObj;
}//eof createXHR
function search(var1, var2) {
var xhrObj = createXHR();
if (xhrObj) {
try {
var queryString = "whatever";
xhrObj.open("GET", "url.php"+queryString,true);
xhrObj.onreadystatechange = function (){callback(xhrObj,var1,var2);};
xhrObj.send(null);
} catch (e) {
alert ('search error');
return;
}
} else {
alert("search error has occured, please refresh and try again");
return; //do plan B. You do have a plan B, no?
}
}//tld close
function callback(xhr,var1, var2) {
if (xhr.readyState == 4) {
try {
if (xhr.status == 200)
{
var s = xhr.responseText;
//dosomething
}
else {
alert('Status error '+xhr.status);
return;
}
}
catch (e) {
alert("live Server Error ");
return;
//this will alert if a call is issued to a nonexistent function / variable
}
}
}//callback close