使用json

时间:2016-10-03 06:16:29

标签: javascript json node.js pug

要求: 我有一个json响应,我想转换为dropdown。我使用玉石模板来处理迭代,但我在获取值方面遇到了麻烦。我希望sys_id作为从下拉列表中选择选项(u_product_name)的值传递。

JS

result = //result is coming from API but this is what a console.log(result) shows
{ result: 
   [ 
     { sys_id: '7d950856',
       u_product_name: 'ACCESS' },
     { sys_id: '803279e1',
       u_product_name: 'AVAYA' },
     { sys_id: '87484c96',
       u_product_name: 'ADAMO' },
     { sys_id: 'b3b9001a',
       u_product_name: 'ADM' } 
   ]
}

我得到的最近的事情是使用JSON strigify,尽管将每个字母拆分为新选项。

2 个答案:

答案 0 :(得分:4)

试试这个我希望它能运作:

Html:

<select id="items"></select>

脚本:

 var data={ result: 
                   [ 
                     { sys_id: '7d950856',
                       u_product_name: 'ACCESS' },
                     { sys_id: '803279e1',
                       u_product_name: 'AVAYA' },
                     { sys_id: '87484c96',
                       u_product_name: 'ADAMO' },
                     { sys_id: 'b3b9001a',
                       u_product_name: 'ADM' } 
                   ]
    };

var elemArr = data.result;
var select = document.getElementById( 'items' );

for (options in elemArr) {
select.add( new Option( elemArr[options].u_product_name) );
}

工作演示: https://jsfiddle.net/rohitjindal/ndfv8cy0/

答案 1 :(得分:1)

示例

    var data={ result: 
       [ 
         { sys_id: '7d950856',
           u_product_name: 'ACCESS' },
         { sys_id: '803279e1',
           u_product_name: 'AVAYA' },
         { sys_id: '87484c96',
           u_product_name: 'ADAMO' },
         { sys_id: 'b3b9001a',
           u_product_name: 'ADM' } 
       ]
    }

    $.each(data.result, function (key, value) {

        $("#yourdropdownid").append($("<option></option>").val(value.sys_id).html(value.u_product_name));

    });