Вы можете выбрать текущий option
любого select
элемента:Есть ли SelectedIndex для HTMLL DataList?
mySelect.options[mySelect.selectedIndex]
Могу ли я сделать то же самое с DataList? Что-то вроде этого:
<input id = "input" list = "datalist" type = "text" />
<datalist id = "datalist">
<option value = "No. 1"></option>
<option value = "No. 2"></option>
<option value = "No. 3"></option>
</datalist>
<script>
var datalist = document.getElementById ("datalist");
var input = document.getElementById ("input");
input.addEventListener ("keyup", function (event) {
if (event.which === 13) {
alert (datalist.options[datalist.selectedIndex]); // Example
}
}, false);
</script>
Осторожно: когда пользователь нажимает на ниспадающего элемента из DataList (MouseClick), ни одно событие не является (chrome21) –
Возможно, нужно изменить прослушиватель событий на 'input', так как это будет работать с проблемой, которую тоже поставил Дмитрий. –