Javascript-форум (https://javascript.ru/forum/)
-   ExtJS (https://javascript.ru/forum/extjs/)
-   -   проблемы с импользованием глобальной переменной (https://javascript.ru/forum/extjs/20925-problemy-s-impolzovaniem-globalnojj-peremennojj.html)

Ichigeki 23.08.2011 01:26

проблемы с импользованием глобальной переменной
 
есть .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 ведь определен же выше!

devote 23.08.2011 03:50

может в переменной где нить русская буква закралась

Black_Prince 23.08.2011 13:32

попробуйте просто объявить элементарную глобальную переменную, например var q = 'q'. И сделать alert(q);

Просто мыслей никаких по поводу этой ошибки... сам использую глобальные переменные в ExtJS, и они нормально отрабатывают.

B@rmaley.e><e 23.08.2011 13:47

Дайте ссылку на весь script.js

devote 23.08.2011 14:11

согласен с B@rmaley.e><e, возможно ниже по коду где нить переменная updateResponseFromServer уничтожается. Или что-то с ней происходит.. А без всего кода вряд-ли тут что решишь.

Ichigeki 24.08.2011 22:56

вот скрипт http://ichigeki.lhosting.info/forum/...tes/scripts.js

B@rmaley.e><e 24.08.2011 23:32

Весьма странно.

У Вас там eval'ы встречаются, им точно корректный код приходит?

Ichigeki 24.08.2011 23:52

Цитата:

Сообщение от B@rmaley.e><e (Сообщение 122226)
Весьма странно.

У Вас там eval'ы встречаются, им точно корректный код приходит?

Да, eval'ам прикодит корректный код, это проверял не раз

melky 25.08.2011 01:15

пример страницы с этим скриптом дайте, задебажу. не могу поверить, что она "теряется"

Ichigeki 25.08.2011 09:10

Цитата:

Сообщение от melky (Сообщение 122255)
пример страницы с этим скриптом дайте, задебажу. не могу поверить, что она "теряется"

http://ichigeki.lhosting.info/forum/forum.php


Часовой пояс GMT +3, время: 09:30.