проблемы с импользованием глобальной переменной
есть .JS файл, в котором:
var updateResponseFromServer = {
requestParams : {
page : 0,
id : 0
},
lastDateTime : 0
};
function sendRequestToUpdate(inCurrentPage, inId, inLastDate){
Ext.Ajax.request({
url: 'updater.php?timestamp=' + inLastDate + '&page=' + inCurrentPage + '&id=' + inId,
success: function(xhr) {
var oldRequestParams = updateResponseFromServer.requestParams;
updateResponseFromServer = xhr.response;
updateResponseFromServer.requestParams = oldRequestParams;
},
failure: function() {
Ext.Msg.alert("Request to update failed", "Server communication failure");
}
});
}
на что консоль пишет: updateResponseFromServer is undefined updateResponseFromServer.requestParams = oldRequestParams; scripts.js (строка 23) updateResponseFromServer is undefined var oldRequestParams = updateResponseFromServer.requestParams; scripts.js (строка 19) updateResponseFromServer is undefined var oldRequestParams = updateResponseFromServer.requestParams; вот почему так? Объект updateResponseFromServer ведь определен же выше! |
может в переменной где нить русская буква закралась
|
попробуйте просто объявить элементарную глобальную переменную, например var q = 'q'. И сделать alert(q);
Просто мыслей никаких по поводу этой ошибки... сам использую глобальные переменные в ExtJS, и они нормально отрабатывают. |
Дайте ссылку на весь script.js
|
согласен с B@rmaley.e><e, возможно ниже по коду где нить переменная updateResponseFromServer уничтожается. Или что-то с ней происходит.. А без всего кода вряд-ли тут что решишь.
|
|
Весьма странно.
У Вас там eval'ы встречаются, им точно корректный код приходит? |
Цитата:
|
пример страницы с этим скриптом дайте, задебажу. не могу поверить, что она "теряется"
|
Цитата:
|
Цитата:
Код:
Веб-страница недоступна |
Цитата:
|
Тьфу, блин.
Цитата:
|
Цитата:
{"success":true,"response":{"isLoggedIn":false,"areThereNewMessages":false,"pageNeedsToBeUpdated":false,"lastDateTime":"0"}}
Т.о. response есть |
Ichigeki, неправильно понимаете. В Вашем случае xhr — обычный XMLHttpRequest объект.
|
Цитата:
|
| Часовой пояс GMT +3, время: 07:22. |