使用 D3 设置下拉菜单的默认选择

2024-03-04

我创建了一个包含几个月的下拉菜单作为选项,但想预先指定一个选项作为默认值。然而,默认选择似乎顽固地保留在列表中的第一个选项。

我尝试了下面的代码,这对我来说很有意义,因为对于任何其他属性,设置一个简单的比较就足以改变该属性的值。

var defaultOptionName; // desired default dropdown name
d3.select("#dropdown").append("select")
    .on("change", someFunction)
    .selectAll("option").data(dataset)
    .enter().append("option")
    .attr("value", function(d){return d;})
    .attr("selected", function(d){
         return d === defaultOptionName;
    })
    .text(function(d){ return d; });

我知道我的问题只是语法正确的问题,但是当我尝试搜索互联网和 stackoverflow 时,却无法弄清楚我错过了什么。


我发现而不是使用.attr,我需要使用.property以访问默认选择选项。只需进行简单的替换即可,因此您的代码片段将类似于:

    .property("selected", function(d){ return d === defaultOptionName; })
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 D3 设置下拉菜单的默认选择 的相关文章