API Ajax结构化

时间:2017-01-31 14:48:58

标签: javascript jquery ajax

我的目标:实施搜索功能,以显示从USDA NDB API中提取的营养数据。

状态:部分成功

问题:美国农业部对这个物体的结构有点令人讨厌。推荐此屏幕截图:http://imgur.com/a/gOKdk 比萨有第一个关键价值的水,牛奶有能量。

我的问题:

如果我想为所有搜索获取能量,我将如何构建我的ajax调用?

$.ajax({
        type: 'GET',
        async: false,
        url: 'http://api.nal.usda.gov/ndb/reports/?ndbno=' + ndbno[0] + '&type=b&format=json&api_key=',
        success: function(results) {
            food0 = results.report.food;
            console.log(food0);
            $("#jsGrid-nutrition").jsGrid("insertItem", {
                name: food0.name,
                kCal: food0.nutrients[1].measures[0].value,
                servingSize: food0.nutrients[1].measures[0].label,
                quantity: food0.nutrients[1].measures[0].qty,
                carbs: food0.nutrients[4].value + food0.nutrients[4].unit,
                fats: food0.nutrients[3].value + food0.nutrients[3].unit,
                saturatedFats: food0.nutrients[3].value + food0.nutrients[3].unit,
                protein: food0.nutrients[24].value + food0.nutrients[24].unit
            });

1 个答案:

答案 0 :(得分:1)

您应该循环播放数组并搜索特定的name

var energy = '';

$.each(food0.nutrient, function () {
    if (this.name == 'Energy') {
        energy = this.value;

        return false; // == break; return true == continue;
    }
});