首页 > 解决方案 > 如何为每个选项添加索引作为值?

问题描述

这是我的 HTML 片段

<div class="well">
    <h5>Test Subject ID No.:</h5>
    <select id="selDataset" onchange="optionChanged(this.value)"></select>
</div>

这就是我附加选项的方式

const url = "./samples.json";
var selectDropdown = d3.select("#selDataset")

function addOptions() {
    d3.json(url).then(function(data) {

        data.names.forEach(name => {
            var appendOption = selectDropdown.append("option").text(name)
        })
    })
}

addOptions()

我现在正在尝试为每个选项添加一个索引作为一个值,知道我该怎么做吗?

标签: javascriptd3.js

解决方案


D3 有一种.attr方法可以满足您的需求。

var selectDropdown = d3.select("#selDataset");

function addOptions() {
    d3.json(url).then(function(data) {

        data.names.forEach((name, i) => {
            var appendOption = selectDropdown.append("option").text(name).attr('value', i);
        });
    });
}

addOptions();

推荐阅读