Организация очереди запросов через jQuery.Deferred()

Рейтинг: 1Ответов: 2Опубликовано: 25.04.2015

По нажатию на кнопку идет post запрос, который возвращает html со скриптами, содержание которого зависит от параметров (param).

function GetPlaces(param) {
    $.post(places_url, param, function(data) {
        $(".places").html(data);
    });
}

При быстрой смене параметров и многократном нажатии на кнопку отрисовка выполняется естественно не порядке нажатия на кнопку. Нужно реализовать нечто вроде очереди (чтобы при повторном нажатии на кнопку отправка происходила, только после полной отрисовки и выполнения всех скриптов первого нажатия.

Пытаюсь сделать так, но желаемого результата нет:

defPlaces = $.Deferred();

function GetPlaces(param) {
    defPlaces = defPlaces.then(
        $.post(places_url, param, function(data) {
            $(".places").html(data);
        })
    );
}

Что я делаю не так?

Ответы

Ответов пока нет.