2012-11-07 73 views
1

我有一個頁面,通過AJAX提交一些數據到另一個頁面,在那裏它被處理並使用json_encode PHP函數返回。從JSON對象獲取值

在我原來的頁面,在AJAX功能上的成功,我取回數據並把它放在警報來測試像這樣:

success: function(data){ 
    alert(data); 
} 

警報輸出的格式如下:

{"id":2,"item":"my text string"} 

不,我需要抓住這個對象的每個部分,並使用jQuery與他們做些什麼。我如何得到它們?我試過:數據 - >但它打破了我的JS代碼...有點困惑。

回答

5

首先,使用dataType設置確保您獲得的數據被jQuery解析爲jQuery。

然後使用data.iddata['id']讀取ID參數

$.ajax({ 
    url: 'someurl', 
    dataType: 'json', // precise this 
    success: function(data){ 
     var id = data.id; 
     var item = data.item; 
     alert(item); 
    } 
}); 

當你的數據例如{"some name":9}data['id']結構是有益的。

+1

如果警報是給你的 '{ 「ID」:2, 「項目」: 「我的文本字符串」}' 你不是處理一個JSON對象。 – bluetoft

1

您的提醒告訴我,您沒有要處理的對象......但只是一個字符串。 您需要首先將數據解析爲JSON對象。

http://jsfiddle.net/QNu9Y/

d= '{"id":2,"item":"my text string"}'; 


(function(data){ 
    var parsed = JSON.parse(data) 
    alert(parsed.id) 
     })(d)