Ответ 1
Вам не нужно использовать D3 для этого:
var sel = document.getElementById('myselect');
console.log(sel.options[sel.selectedIndex].value)
Я хочу получить значение выбранного параметра из выпадающего списка, в D3.js.
<select>
<option data-graph="1">1</option>
<option value="2">2</option>
</select>
Я видел этот вопрос, в котором объясняется, как получить значение при изменении выбора:
d3.select("#myselect").on("change", change)
function change() {
this.options[this.selectedIndex].value
}
Но как я могу получить выбранное значение при загрузке страницы, а не при изменении выбора?
Вам не нужно использовать D3 для этого:
var sel = document.getElementById('myselect');
console.log(sel.options[sel.selectedIndex].value)
Я нашел это самым простым:
d3.select("#objectID").node().value;
Каков текст выбранного параметра в следующем node: <select id="objectID"></select>
Обратите внимание, что d3.node()
задокументировано на https://github.com/mbostock/d3/wiki/Selections#node, а свойство .value
объекта HTMLInputElement
документировано на MDN в https://developer.mozilla.org/en/docs/Web/API/HTMLInputElement.
Используйте метод .property()
:
d3.select("#objectID").property("value")
Я также видел
d3.select("#objectID")[0][0].value
Но я совершенно уверен, что это вообще плохая идея...