Я использую следующий код для вызова функции при изменении URL главного браузера.Отправка запроса Ajax только один раз
var mainWindow = window.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
.getInterface(Components.interfaces.nsIWebNavigation)
.QueryInterface(Components.interfaces.nsIDocShellTreeItem)
.rootTreeItem
.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
.getInterface(Components.interfaces.nsIDOMWindow);
mainWindow.getBrowser().addEventListener("DOMContentLoaded",function(){ getFromDB();}, false);
Этот getFromDB()
отправляет запрос на сервер
request = new XMLHttpRequest();
request.open("GET", "http://www.mydomain.com/getJSON.php", true);
request.onreadystatechange = sendData;
Все работает нормально, но проблема в том, что запрос отправляется на сервер для бесконечного числа раз. Если браузер загружен страницей в пределах loacalhost
, запрос отправляется только один раз.
Я хочу, чтобы запрос был отправлен только один раз для загрузки/запроса страницы (или изменения URL).
Я использовал несколько булевых чеков. Но они не работают.
var check=0;
if(check==0)
{
check=1;
getFromDb();
}
внутри первого addEventListener
в линии: 8 Помоги мне, чтобы получить это.
Я использовал глобальные переменные. Но я не получаю результат. –