jQuery objeto adiado com chamadas aninhadas aninhadas

Eu tenho uma situação em que minhas chamadas ajax devem executar em uma ordem específica. Eu usei objetos jQuery Deferred em outras situações, mas não consigo encontrar uma maneira de fazer isso se comportar adequadamente.

Eu tenho uma função que executa um número deajax pedidos em sua vida. Algumas das solicitações serão executadas durante o retorno de chamada de sucesso de outras solicitações.

Minha pergunta:Existe uma maneira de retornar todos os objetos adiados aninhados para o original$.when ligar?

Um exemplo simplificado seria:

function nestedAjax() {
    $.get("/", function(){
        console.log("First ajax done.");
        $.get("/", function(){
            console.log("Second ajax done.");
        });
    });
};

Eu estou tentando ter onestedAjax função para usar$.when() e$.done() igual a:

$.when(nestedAjax()).done(function(){
    console.log("Complete");
});​

Com a leitura da saída do console:

> First ajax done.
> Second ajax done.
> Complete.

Eu posso devolver o primeiroget Para alcançar isto:

> First ajax done.
> Complete.
> Second ajax done.

Mas obviamente isso não é o que eu preciso. Qualquer ajuda seria apreciada.

questionAnswers(3)

yourAnswerToTheQuestion