2015-06-04 42 views
0

我有一個ajax請求,它具有一個錯誤處理程序,可以輸出如下所示的json響應中返回的錯誤消息: (忽略第二個循環我只是顯示了什麼我已經嘗試過,也應該有工作據我所知是警報在第一(錯誤)或警報(error.msg)for循環)的部分:無法從Ajax錯誤處理程序中的響應中檢索Json錯誤消息

error: function(xhr){ 
        var error_array = $.parseJSON(xhr.responseText); 
        for (var error in error_array){ 
         for (var err in error){       
          alert(err); 
         } 
         //alert(error['msg']; 
         //alert(error.msg); 
         //alert(error); 
        } 

       } 

正由我的控制器返回的JSON的結構類似於這個: enter image description here

到目前爲止我所能得到的唯一值在使用alert(錯誤)時,出現這個響應的時候是0和1,當我做其他事情時undefined是undefined,任何人都可以幫我從javascript函數中獲取這些錯誤消息嗎?

編輯:如果我做alert(error_array)我讓我的兩個字符串由逗號

+0

Javascript「for」不符合你的想法。 「錯誤」和「錯誤」是鍵,而不是數組值。你應該使用error_array [error]和error_array [error] [err] – itd

回答

0

的意見,並回答了發佈不正是我一直在尋找,但把我推到正確的方向,找到合適的辦法讓我的錯誤信息,這是怎麼了我得到它的工作:

error: function(xhr){ 
       var error_array = $.parseJSON(xhr.responseText); 
       for (error in error_array){ 
        alert(error_array[error].msg); 
       } 

      } 
0

你提醒對象鍵,而不是值隔開。 爲了得到一個值,你應該:

alert(error[err]);