2013-11-15 36 views
0

我正在做一個Ajax調用的響應將是一個400 HTTP錯誤代碼。 我使用PHP作爲服務器端語言。 我的PHP:XHR對象的信息是不確定的,但顯示正確的狀態

header('Content-Type: text/html',true,400); 
echo $this->upload->display_errors('<p>', '</p>'); 

我的javascript:

$('#upload-form').ajaxForm({ 
      success: function() { 
       $(".loader").hide(); 
       return false; 
      }, 
      complete: function(data) { 
       var imageUrls = new Array(); 
       var i = 0; 
       jQuery.each(data, function(index, item) { 
        imageUrls[i] = item.name.toString(); 
        i++; 
       }); 
       alert(imageUrls); 
       $(".loader").hide(); 
       return false; 
      }, 
      error : function(xhr, status, errorMessage) { 
       //alert(xhr.status); 
       alert(status); 
       alert(errorMessage); 
       //$("#status").html(xhr.message); 
       $(".loader").hide(); 
      } 
     }); 

,當我想顯示錯誤信息,則返回undefined。我用xhrxhr.message但沒有運氣。我怎樣才能返回一個錯誤代碼與消息到ajax調用,並進行響應?

+0

...你正在使用'jQuery.each(數據,'但數據沒有定義 –

+1

嘗試登錄發送到錯誤回調另外兩個參數'錯誤:功能(XHR,狀態的errorMessage )' –

+0

@KevinB,完整的部分是確定的,但我的問題是有錯誤的部分。 – Ramin

回答

1

試試這個?

 error: function (xhr, textStatus, errorThrown) { 
         switch (xhr.status) { 
          case 400: 
          case 401: 
          case 402: 
          case 403: 
          case 404: 
          case 500: 
           message = xhr.responseText; 
           break; 
          default : 
           message = 'Error unKnown'; 
         } 
     } 
+0

感謝,XHR .responseText工作。 – Ramin

+0

@ 1linecode可以將其標記爲一個解決方案? – ilyass

+0

是的,但該網站說,等待4分鐘。 – Ramin

相關問題