2013-06-18 134 views
0

我的要求阿賈克斯與json_encode:解析JSON jQuery的

[{"idHome":"1","Photo":"home-1.jpg","Publier":"1"}, 
{"idHome":"2","Photo":"home2.jpg","Publier":"1"}, 
{"idHome":"3","Photo":"home3.jpg","Publier":"1"}] 

var string = JSON.stringify(data); 

var obj = $.parseJSON(string); 

console.log(string); 

var idHome = obj.idHome; 

var photo = obj.Photo; 


console.log(obj.idHome); 

console.log(obj.Photo); 

問題的解析JSON

控制檯日誌:

[{"idHome":"1","Photo":"home-1.jpg","Publier":"1"},{"idHome":"2","Photo":"home-2.jpg","Publier":"1"},{"idHome":"3","Photo":"home-3.jpg","Publier":"1"}] 

undefined 

undefined 
+0

W¯¯ hy不使用'$ .getJSON'而不是'$ .ajax'? –

+0

我使用$ .ajax! $ .ajax({url:「url」, data:'GET', dataType:'json', – boube

+0

您已編碼數組...'console.log(obj [0]);' –

回答

2

這是一個數組,所以你需要通過,有這麼多的方法來做到這循環。

for (i = 0; i < obj.length; i++) { 
    console.log(obj[i].idHome); 
    console.log(obj[i].Photo); 
} 

或:

obj.forEach(function(val) { 
    console.log(val.idHome); 
    console.log(val.Photo); 
}); 

或:

for (var i in obj) { 
    console.log(obj[i].idHome); 
    console.log(obj[i].Photo); 
} 

Jquery的用途:

$.each(obj, function(_, val){ 
    console.log(val.idHome); 
    console.log(val.Photo); 
}); 

等....

+0

不錯thx!它的作品:) – boube

+0

@boube歡迎您。 – PSL

+0

jquery使用解析只是{「idHome」:「1」,「照片」:「home1.jpg」,「Publier」:「1」} – boube