2014-09-29 67 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); 
});