在ajax上发送第二个请求()

时间:2014-04-01 06:39:32

标签: jquery ajax

我有一个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作为通话?

2 个答案:

答案 0 :(得分:3)

.done()接受一个函数作为参数,而不是一个对象

$.ajax({...}).done(function(){
    $.ajax({...})
})

答案 1 :(得分:0)

解析延迟时会触发

done(), 通过这个链接 http://api.jquery.com/category/deferred-object/

你可以使用deferred.then()来添加新的处理程序,以便在解析,拒绝Deferred对象时添加要调用的处理程序。

相关问题