Получить выбранное значение в раскрывающемся списке с помощью JavaScript

Как получить выбранное значение из выпадающего списка с помощью JavaScript?

Я попробовал методы, описанные ниже, но все они возвращают выбранный индекс вместо значения:

var as = document.form1.ddlViewBy.value;
var e = document.getElementById("ddlViewBy");
var strUser = e.options[e.selectedIndex].value;
1572
задан Steven 10 July 2019 в 15:36
поделиться

3 ответа

Если у вас есть элемент select, который выглядит следующим образом:

<select id="ddlViewBy">
  <option value="1">test1</option>
  <option value="2" selected="selected">test2</option>
  <option value="3">test3</option>
</select>

Выполнение этого кода:

var e = document.getElementById("ddlViewBy");
var strUser = e.options[e.selectedIndex].value;

сделает strUser равным 2 . Если вам действительно нужен test2 , сделайте следующее:

var e = document.getElementById("ddlViewBy");
var strUser = e.options[e.selectedIndex].text;

Что сделает strUser test2

2759
ответ дан 22 November 2019 в 20:09
поделиться

Единственная причина, по которой, как я вижу, этот код не работает, заключается в том, что вы используете IE7- и забыли указать атрибут значения для своего - теги ... Каждый другой браузер должен преобразовывать содержимое тегов открытия-закрытия в значение параметра.

1
ответ дан 3 October 2019 в 21:32
поделиться
var strUser = e.options[e.selectedIndex].value;

Это правильно и должно дать вам значение. Это текст, который вам нужен?

var strUser = e.options[e.selectedIndex].text;

Итак, вы понимаете терминологию:

<select>
    <option value="hello">Hello World</option>
</select>

Эта опция имеет:

  • Индекс = 0
  • Значение = привет
  • Текст = Привет, мир
169
ответ дан 22 November 2019 в 20:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: