jQuery AJAX自定义函数和自定义回调?

jQuery AJAX自定义函数和自定义回调?,第1张

jQuery AJAX自定义函数和自定义回调?

编辑:

最近对此表示赞同,我不得不说我不再这样做。

$.ajax
返回a,
promise
因此您可以直接使用promise以更一致和更可靠的方式执行我在这里所做的几乎所有工作。

function customRequest(u,d) {   var promise = $.ajax({     type: 'post',     data: d,     url: u   })   .done(function (responseData, status, xhr) {       // preconfigured logic for success   })   .fail(function (xhr, status, err) {      //predetermined logic for unsuccessful request   });   return promise;}

然后用法如下:

// using `done` which will add the callback to the stack // to be run when the promise is resolvedcustomRequest('whatever.php', {'somekey': 'somevalue'}).done(function (data) {   var n = 1,       m = 2;   alert(m + n + data);});// using fail which will add the callback to the stack // to be run when the promise is rejectedcustomRequest('whatever.php', {'somekey': 'somevalue'}).fail(function (xhr, status, err) {   console.log(status, err);});// using then which will add callabcks to the // success AND failure stacks respectively when // the request is resolved/rejectedcustomRequest('whatever.php', {'somekey': 'somevalue'}).then(  function (data) {     var n = 1,         m = 2;     alert(m + n + data);  },  function (xhr, status, err) {     console.log(status, err);  });

当然,我一直都这样做。您可以在实际的成功Callack中执行回调,也可以将回调分配为成功回调:

function customRequest(u,d,callback) {   $.ajax({     type: "post",     url: u,     data:d,     success: function(data) {        console.log(data); // predefined logic if any        if(typeof callback == 'function') {callback(data);        }     }  });}

用法如下所示:

customRequest('whatever.php', {'somekey': 'somevalue'}, function (data) {   var n = 1,       m = 2;   alert(m + n + data);});


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5039839.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-15
下一篇2022-11-15

发表评论

登录后才能评论

评论列表(0条)

    保存