如何将选项附加到 d3 中的选择组合框中

ang*_*gel 2 javascript d3.js

我想将该选项添加到选择组合框中,例如我有类似的数据

[{ "NAME": "JONE", "ID": {"id1":123,"id2":124}}, { "NAME": "ANGEL", "ID": {"id1":125,"id2":127}}]` 
Run Code Online (Sandbox Code Playgroud)

我想将“名称”附加到选项中,到目前为止我已经这样做了:

dataset=d3.json("namees.json", function(data) {
    select = d3.select('body')
    .append('select')
    .attr('class','style');
    options = select
    .selectAll('option')


    .append('option')
            .text(data.forEach(function (d) {return d.Name}))



});
Run Code Online (Sandbox Code Playgroud)

但它没有显示选择选项中的值

spa*_*a93 8

你可以这样做:

  1. 追加select元素

     var dropDown = d3.select("body").append("select")
        .attr("name", "name-list");
    
    Run Code Online (Sandbox Code Playgroud)
  2. 根据数据附加options到您的select元素

    var options = dropDown.selectAll("option")
     .data(data)
     .enter()
     .append("option");
    
    Run Code Online (Sandbox Code Playgroud)
  3. 为您的选项设置textvalue

    options.text(function(d) {
    return d.NAME;
     })
       .attr("value", function(d) {
    return d.NAME;
    });
    
    Run Code Online (Sandbox Code Playgroud)

JSFiddle - https://jsfiddle.net/x4a8ejk6/