2014-09-29 68 views
-1

我有以下類型的JSON:分析JSON使用jQuery

{ 
    "cards": [ 
    { 
     "type": "Cultural", 
     "number": "auto", 
     "url": "http://www.url1.com" 
    }, 
    { 
     "type": "Museums", 
     "number": "auto", 
     "url": "http://www.url2.com" 
    }, 
    { 
     "type": "Outdoors", 
     "number": "auto", 
     "url": "http://www.url3.com" 
    }, 

如何我可以通過我的JSON請jQuery的循環?

+1

到目前爲止發現了什麼?你有什麼嘗試?你卡在哪裏? – 2014-09-29 00:25:07

回答

2

假設這是你的源對象:

var data = { 
    "cards": [ 
    { 
     "type": "Cultural", 
     "number": "auto", 
     "url": "http://www.url1.com" 
    }, 
    { 
     "type": "Museums", 
     "number": "auto", 
     "url": "http://www.url2.com" 
    }, 
    { 
     "type": "Outdoors", 
     "number": "auto", 
     "url": "http://www.url3.com" 
    }] 
} 

你並不需要jQuery來通過每個項循環;用一個簡單的for你可以像

for(var i=0; i<data.cards.length;i++){ 
    console.log(data.cards[i]);//<-- also possible: data.cards[i].type or data.cards[i].number or data.cards[i].url 
} 

然而,也有可能使用.each

$.each(data.cards, function(index, value) { 
    console.log(index + ': ' + value); 
}); 
1

用jQuery做到這一點如果你已經被解析成JSON對象,那麼你可以簡單地使用以下:

var j={"cards":[....]}; 

$.each(j.cards, function(i,c){ 
    //c is card that you can process. 
}); 
0

jQuery有其將解析結構良好的JSON和返回一個javascript對象的函數:

http://api.jquery.com/jquery.parsejson/

var json = '{"name":"John"}'; 
var myObject = $.parseJSON(json); 

,那麼你可以使用JavaScript來遍歷對象爲這樣:

for(var ind in myObject) { 
    var value = myObject[ind]; 
} 

在現實中,你居然要確保屬性是不是樣機,所以變化上述於:

for(var ind in myObject) { 
    if (myObject.hasOwnProperty(ind)) { 
     var value = myObject[ind]; 
    } 
} 

,或者如果你想要一個jQuery的所有解決方案,您可以使用。每個

$.each(myObject, function(ind, value) { 
    console.log(value); 
});