Chamadas Ajax Async fáceis

Use-o sempre que tiver funções que precisam aguardar os dados retornados de suas chamadas ajax.

Defina essas funções em qualquer namespace de que você precise para acessá-las

function sendData(sendObj) {
return jQuery.ajax({
url
: sendObj.url,
dataType
: sendObj.dataType,
data
: sendObj.data,
type
: sendObj.type
//you can define as much or as few ajax settings as you want
});
}

function response(f,success,error) {
//set success function
f
.success(function(returnedData){
success
(returnedData);
});
//set error function
f
.error(function(returnedData){
error
(returnedData);
});
}

Quando você estiver pronto para chamar o servidor, defina seu sendObj e suas funções de resposta:

var sendObj ={};
sendObj
.url = 'example.com/ajax.php';
sendObj
.dataType = 'json';
sendObj
.data = {fruit: 'apple', veggie: 'carrot'};
sendObj
.type = 'POST';

var produceSuccess = function(data){
if(data) {
//It worked! Do stuff with data!
}
}

var produceError = function(data){
if(data) {
//Fail!
}
}

Então você chama suas funções assim:

callback = sendData(sendObj);
response
(callback,produceSuccess,produceError);

Agora, o que quer que aconteça quando suas chamadas forem concluĂ­das, os dados necessários serĂŁo aguardados – nĂŁo há necessidade de redefinir as funções ajax todas as vezes!