2011-11-09 22 views
3

如果AJAX調用無法到達服務器,則必須在請求的頁面上顯示錯誤。如何在AJAX調用失敗的情況下在網頁上顯示錯誤(例如超時錯誤)

我不知道這樣做的確切的Ajax代碼。

到目前爲止,我已經試過的代碼是:

$.ajax({ 
     type: 'get', 
     url: '/tasks', 
     timeout: (5000), 
     success: function(){ 
      alert('success'); 
     }, 
     error: function(objAJAXRequest, strError){ 
      abort("Error! Type: " +strError); 
     } 
}); 

當我殺死服務器(頁面後本身加載!)這個AJAX調用應顯示錯誤消息,並重新啓動服務器時那麼它應該正確迴應請求。

+1

你的意思是說,你停止服務器,它應該拋出一個錯誤,然後你再次啓動服務器,並顯示一條成功消息,而不會再次觸發該調用?我不認爲這是可能的。 –

+0

要添加到Felix所說的內容,AJAX請求將發送到同一站點上的某個位置,因此如果服務器停止,該網站將無法看到?如果我誤解了你的意思,請糾正我。 –

+0

有可能是trggering,我只是想發送錯誤信息給請求的頁面在服務器不可用的情況下 – Shambhu

回答

0

只是我的猜測理論,可以通過setTimeout函數做

$(document).ready(function() { 
    setTimeout(ajaxPoll, 5000); 
}); 

function ajaxPoll(){ 
    $.ajax({ 
     type: 'get', 
     url: '/tasks', 
     success: function(){ 
      $('alertWindow').hide(); 
     }, 
     error: function(objAJAXRequest, strError){ 
      $('alertWindow').show(); 
     } 
    }); 
} 

而且它意味着你不能使用模態窗口警報,它應該是唯一的DOM元素。

相關問題