dklight
@dklight
php кодер - level 2.5

Как получить значение переменной после аякс запроса?

есть функция
function get_current_stage(){
        var stage = -1;
        console.log('find current stage: ');
        var url = 'ajax/get_curr_stage.php';

        $.ajax({
            'type': 'post',
            'url': url,
            'data': '',
            'dataType': 'json',
            'beforeSend': function(xhr) {
                //
            }
        }).done(function(rs) {
            console.log("ответ получен: " + rs['message'] + ' || success: ' + rs['success'] + ' || stage : ' + rs['stage'])
            if (rs['success'] !== 1){
                stage = rs['stage'];
                return stage;
            }
        })
        .fail(function() {
            console.log("Ошибка!")
        });

        console.log('stage after: ' + stage);
        return stage;
    }

хочу поймать переменную, которая получается после аякс запроса, в return
пока получаю stage = -1, ты то, что было в первой же строке функции

как нормально сохранить переменную?
  • Вопрос задан
  • 128 просмотров
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
проблема в том, что вот эти строки в конце
console.log('stage after: ' + stage);
return stage;

исполняются ДО того, как пришел ответ с сервера.
Читайте что-нибудь о асинхронности.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы