D3.js:获取所选期权的价值?

时间:2013-09-18 22:57:55

标签: d3.js

我想从D3.js的下拉列表中获取所选选项的值。

<select>
<option data-graph="1">1</option>
<option value="2">2</option>
</select>

我看过this question,它解释了当选择更改时如何获取值:

d3.select("#myselect").on("change", change)
function change() {
    this.options[this.selectedIndex].value
}

但是如何在页面加载时获取所选值,而不是在更改选择时?

4 个答案:

答案 0 :(得分:44)

我发现这是最简单的:

d3.select("#objectID").node().value; 

以下节点中所选选项的文本:<select id="objectID"></select>

请注意,https://github.com/mbostock/d3/wiki/Selections#node记录了d3.node()https://developer.mozilla.org/en/docs/Web/API/HTMLInputElement的MDN记录了.value的{​​{1}}属性。

答案 1 :(得分:30)

使用.property() method

d3.select("#objectID").property("value")

答案 2 :(得分:12)

您无需使用D3来执行此操作:

var sel = document.getElementById('myselect');
console.log(sel.options[sel.selectedIndex].value)

答案 3 :(得分:0)

我也见过

d3.select("#objectID")[0][0].value

但我确信这通常是一个坏主意......