2014-01-15 42 views
0

我有一個AJAX調用,我可以在我的控制檯中看到的,我得到這個JSON:從AJAX調用獲取JSON數組值jQuery中

{ 
"status": 400, 
"code": 11, 
"property": "validation", 
"errorMessages": [ 
    { 
     "type": "m", 
     "name": "2", 
     "description": "The value must be less than or equal to 10" 
    } 
    ] 
} 

我一直想把你的errorMessage像這樣的值但沒有運氣:

console.log(data.errorMessages[0].description); 

其中數據是JSON對象。

如何獲得此描述值?

+0

[這應該工作(http://jsfiddle.net/RDHs3 /),你解析JSON嗎? – undefined

+0

你試過只記錄'data'嗎? – Kamil

+0

console.log(data);給我[object Object] – jeewan

回答

0

你可以做到這一點

opt = { 
"status": 400, 
"code": 11, 
"property": "validation", 
"errorMessages": [ 
    { 
     "type": "m", 
     "name": "2", 
     "description": "The value must be less than or equal to 10" 
    } 
    ] 
} 

console.log(opt.errorMessages[0].description); 

這裏是一個fiddle

0

我猜你缺少的是jQuery.parseJSON或者你可以把dataType: 'json'ajaxSetup來自動執行(即轉換格式良好的JSON字符串到JavaScript對象)。當然,您只能爲此特定的AJAX調用添加dataType: 'json'。 例如:

$.ajax({ 
      type: 'POST', 
      cache: false, 
      dataType: 'json', 
      url: <your URL>, 
      data: <your input>, 
      success: function(data, status, xhr) { 
       console.log(data); 
      }, 
      error: function(jqXHR, textStatus, errorThrown) { 

      } 
    }); 

還要確保從中您得到響應的服務器,在頭髮送正確的MIME類型,即'Content-Type: application/json'