我有一个ajax请求如下:
var xurl = 'some-url';
var secondurl = 'some-other-url'
$.ajax({
type: 'POST',
url: xurl,
dataType: 'json',
contentType: 'application/json',
data: JSON.stringify(domains),
beforeSend: function(){
$('div.sending').html('Sending request...');
},
success: function (data) {
//
},
error: function (x, t, m) {
//
}
});
我的问题是,我可以在原始ajax电话的done
上发送另一个电话吗?
我写的如下:
....)}//ajax post request ends here
.done({
url: secondurl,
success: function(){
$('div.sending').html('Done!!');
}
});
这是正确的方法吗?如果是的话,任何想法为什么ajax调用完成都不会发送secondurl
作为通话?
答案 0 :(得分:3)
.done()接受一个函数作为参数,而不是一个对象
$.ajax({...}).done(function(){
$.ajax({...})
})
答案 1 :(得分:0)
done(), 通过这个链接 http://api.jquery.com/category/deferred-object/
你可以使用deferred.then()来添加新的处理程序,以便在解析,拒绝Deferred对象时添加要调用的处理程序。