我想从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
}
但是如何在页面加载时获取所选值,而不是在更改选择时?
答案 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)
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
但我确信这通常是一个坏主意......