AJAX回调和返回数据在外部使用

本文介绍了在AJAX请求中如何在外部处理数据和判断请求状态,强调了不应在AJAX内部调用success和error。同时列举了AJAX的多种状态判断方法,如always、done、failed、pipe等,并提示读者可以查看API获取更多信息。欢迎大家交流指正。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方式1:
$(function(){
load(id).done(function(data) {
            console.log(data);
        });
})
function load(id) {
	return promise = $.ajax({
		type: "GET",
		data: {
			id: id,
			key: "EG2BZ-JRT6X-WAU4D-7SWGR-FSFGV-7YFVH",
			output: "jsonp"
		},
		url: "https://apis.map.qq.com/ws/district/v1/getchildren",
		dataType: "jsonp",
		jsonp: "callback"
	})
}

方式2:
function load(id){ 
 return $.ajax({

    type: "GET",
		async: false,
		data: {
			id: id,
			key: "EG2BZ-JRT6X-WAU4D-7SWGR-FSFGV-7YFVH",
			output: "jsonp"
		},
		url: "https://apis.map.qq.com/ws/district/v1/getchildren",
		dataType: "jsonp",
		jsonp: "callback"

  })
  }
  
  var promise = load(440000);
  promise.done(function(data){
  alert("aa");
  }).fail(function(){ alert("出错啦!"); });

当你调用AJAX希望在外部处理数据或者判断AJAX请求状态时做出不同处理就可以用上面的案例,注意这种方法处理时千万不要在AJAX内部调用success和error

除了done还有其它的状态判断

always():一定会执行

catch():执行出错时执行(本体 object)

done():执行成功时执行

failed():执行出错时执行(服务器拒绝)

pipe():过滤方法

progress():当对象生成进度通知时,调用添加处理程序。

Promise():返回Object(延迟)的Promise(承诺)对象。

state():确定一个Object(延迟)对象的当前状态。

then():当(延迟)对象解决,拒绝或仍在进行中时,调用添加处理程序。

这些只是常用的一些方法,如需更多,需要多查看Api

如有更好的方法或有什么不对之处欢迎大家指出!谢谢,不喜务喷喔 !

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值