1、$.ajax() 一般用法

  1. $.ajax({
  2. url:"/demo/test.do",
  3. type:"post",
  4. timeout:15000,//超时时间
  5. beforeSend:function(XMLHttpRequest){
  6. $("#loading").html("<img src='/jqueryStu/images/loading.gif' />");
  7. },
  8. success:function(data,textStatus){
  9. console.log('开始回调,状态文本值:'+textStatus+' 返回数据:'+data);
  10. //开始遍历data的值
  11. for(var i=0;i<data.length;i++){
  12. }
  13. },
  14. complete:function(XMLHttpRequest,textStatus){
  15. console.log('远程调用成功,状态文本值:'+textStatus);
  16. $("#loading").empty();
  17. },
  18. error:function(XMLHttpRequest,textStatus,errorThrown){
  19. console.log('error...状态文本值:'+textStatus+" 异常信息:"+errorThrown);
  20. $("#loading").empty();
  21. }
  22. });

说明:

  • success 只有在AJAX调用成功时才会触发,即最终返回HTTP 200状态。
  • error 请求失败;
  • complete 请求结束,则会触发,无论成功与否。

2、 $.ajax().done()

JQuery 1.8,$.ajax()的 success() 被替换为 done() ,error() 被替换为 fail() ,complete() 被替换为 always() 。

  1. function test(){
  2. $.ajax({
  3. type: "post",
  4. url: "/exportUploadUserDetailCount",
  5. dataType: "json",
  6. }).done(function(data){ // 相当于 success
  7. console.log(data)
  8. if(data.result){
  9. result = data.result;
  10. }
  11. }).fail(function(jqXHR, textStatus, errorThrown){ // 相当于 error
  12. }).always(function( jqXHR, textStatus ){ // 相当于 complete
  13. });
  14. }