2014-10-30 109 views
0

我的主機當前有服務器問題,使今天成爲完美的一天來測試當我的ajax調用失敗時會發生什麼。因此,我發現當出現問題時,我的成功或失敗功能在下面被稱爲:(爲了簡單起見,簡化了)。目前,這將每10次完全失敗一次。jquery post偶爾不會調用成功或錯誤函數

我想知道如何確保我能夠捕捉到所有Ajax錯誤,例如當服務器根本沒有迴應時,就像今天的情況一樣。

myvar = jQuery.post(ajax_object.ajax_url, data, function(response) { 
       console.log('success!'); 
     }) 
     .fail(function() { 
       console.log('sad trombone'); 
     }); 
+0

如果請求被調用,您是否在Chrome/Firebug - >網絡選項卡中看到過? – rogelio 2014-10-30 01:36:34

+0

@rogelio之前沒有使用網絡選項卡...我的服務器目前完全關閉,只要它恢復,我會測試 – 2014-10-30 01:38:24

+0

您可以在本地重現此問題嗎? – rogelio 2014-10-30 01:42:43

回答

0

你可以試試這兩種方法。

  $.ajax({ 
       url: ajax_object.ajax_url, 
       type: 'POST', 
       async: false, 
       cache: false, 
       timeout: 30000, 
       data : data, 
       dataType: 'json', // use this if you want json response 
       error: function() { 
        return true; 
       }, 
       success: function(data) { 

       console.log(data); 

       } 
      }); 

     OR $.post(ajax_object.ajax_url, { data:data }, function(response){ 
      console.log(response); 
      }); 

首先你簡單地給回聲「hii」;出口;在頁面ajax_object.ajax_url,以便您可以測試它是否正確重定向到該頁面。