right i'm modifying ajax request asynchronous wanted know if there similar var reponse = $.ajax({ in success. before had code as:
var response = $.ajax({ type : "get", url : url, data : parameters, cache : false, async : false }).responsetext; return response; i tried doing using first data argument returns parameters. there similar can use in success?
success : function(response) { callback(response); }
because request asynchronous cannot return response.
jquery uses called "promises", can return instead:
function getuser(id) { return $.ajax({ url: "/user", data: { id:id }, }); } so, whenever want user call function:
var userrequest = getuser(123); the userrequest variable contains "future promise". in other words, sometime in future ready use it.
you cannot use straight away can create function run when ready. done using .done() method:
userrequest.done(function (user) { console.log("the user " + user.name + " has been loaded!"); }); if you, example, want load user's profile alongside user can create 2 requests , use $.when() method:
var userrequest = getuser(123). profilerequest = getprofileforuser(123); $.when(userrequest, profilerequest).done(function (user, profile) { console.log(user.name + " " + profile.age + " years old"); }); read more promises on @ jquery.
Comments
Post a Comment