所以我试图解析一些嵌套的 json,而我试图访问它的方式让我对如何将它添加回它自己的单个“项目”感到困惑。每个项目都包含一个图像、一个标题和可能的标签。图像源和标题嵌套在同一级别,因此可以在相同的每个函数中访问它们,但是标签对象(也与图像源和标题在同一级别)包含一个数组,需要使用第二个 each 函数访问以获取每个标签。我可以使用以下代码解析每个标签,但我不确定如何将标签对象数据传递回初始的每个函数。任何帮助将不胜感激!
JSON Structure:
{
"data": [
{
"source": "http://example.com/picture1.jpg",
"caption": "First caption",
"tags": {
"data": [
{
"name": "Cats One"
},
{
"name": "Dogs One"
}
]
}
}
{
"source": "http://example.com/picture2.jpg",
"caption": "Second caption",
"tags": {
"data": [
{
"name": "Cats Two"
},
{
"name": "Dogs Two"
}
]
}
}
]
}
jQuery 用于访问 JSON 数据
$(document).ready(function(){
var url = "http://example.com";
$.getJSON(url, function(json) {
$('#wrapper').prepend('<div id="container"></div>');
$.each(json.data, function(i, data) {
//Adds each entry to container
$("#container").append('<ul class="image">' + '<li class="source"><img src="' + data.source + '" /></li>' + '<li class="caption">' + data.caption + '</li>' + '</ul>');
//Checks if tags exist for each element
if (typeof(this.tags) === 'object') {
$.each(this.tags.data, function() {
//console.log(this.name);
//not sure what to add here to append these tags in a li tag above
});
}
});
});