2013-10-21 95 views
0

Ajax調用後,我試圖提取數據的屬性 - 第一個元素的消息內容:檢索屬性從JSON響應

success : function(data) { 

console.log(data[0].message); 
console.log(data); 
console.log(data.message); .....} 


undefined 
[{"message":"Must not "},{"message":"hello"}] 
undefined 

下面的教程http://www.copterlabs.com/blog/json-what-it-is-how-it-works-how-to-use-it/我很困惑的是什麼,我做錯了。雖然最後data.message顯然是無效的,但我發現data[0].message沒有錯......

+4

什麼是'typeof(data)'? – lastr2d2

+0

@WayneWang你碰到了......該死的。這是文字。如果我的返回類型不同,我期待錯誤。 – Aubergine

回答

2

你的數據仍然是int形式的字符串。將var jsonData = JSON.parse(data);加入您的success函數,將其轉換爲Javascript對象

您沒有顯示您的AJAX調用,但jQuery的.getJSON()會自動爲您解析數據。

-3

我認爲你收到字符串,但不是JSON對象 使用eval(數據),該字符串

+1

呃不 - 不要爲此使用'eval'。使用'JSON.parse()':它更快更安全。 – 2013-10-21 06:29:02