对于大学作业,我必须将JSON数据读入Adobe Edge项目。在下面的JSON中,您将看到我制作了一系列颜色。函数setElementsColor(color)
必须在json文件的Colors
数组中查找正确的对象。因此,参数color
必须等于对象的colorName
。我不太清楚如何做到这一点。
这是JSON:
{
"Colors": [
{
"colorName": "Black",
"imageName": "fridge_black.jpg",
"footerName": "black_footer.png",
"facebookLogo": "black_facebook.png",
"twitterLogo": "black_twitter.png",
"linkedinLogo": "black_linkedin.png"
},
{
"colorName": "Blue",
"imageName": "fridge_blue.jpg",
"footerName": "blue_footer.png",
"facebookLogo": "blue_facebook.png",
"twitterLogo": "blue_twitter.png",
"linkedinLogo": "blue_linkedin.png"
}
]
}
以下函数用于读出JSON文件。
function setElementsColor(color){
$.getJSON('json/colors.json',function(data){
//The JSON must be read out here
});
}
答案 0 :(得分:0)
我会使用$.grep
。
function setElementsColor(color){
$.getJSON('json/colors.json',function(data){
var obj = $.grep(data.Colors, function(color) {
return color.colorName === color;
});
/* Use obj */
});
}
如果Colors
是Object而不是Array,我会更容易。
免责声明:未经测试。