Ответ 1
this.options[this.selectedIndex].innerHTML
должен предоставить вам "отображаемый" текст выбранного элемента. this.value
, как вы сказали, просто предоставляет значение атрибута value
.
Это прекрасно работает
<select name="selectbox" onchange="alert(this.value)">
Но я хочу выбрать текст. Я попытался таким образом
<select name="selectbox" onchange="alert(this.text)">
Отображается undefined. Я нашел, как использовать DOM для получения текста. Но я хочу сделать это таким образом, я имею в виду использование только this.value.
this.options[this.selectedIndex].innerHTML
должен предоставить вам "отображаемый" текст выбранного элемента. this.value
, как вы сказали, просто предоставляет значение атрибута value
.
Чтобы получить значение выбранного элемента, вы можете сделать следующее:
this.options[this.selectedIndex].text
Здесь доступны различные options
выбора, а SelectedIndex
используется для выбора выбранного, затем его text
обращается.
Подробнее о выборе DOM здесь.
Пожалуйста, попробуйте этот код:
$("#YourSelect>option:selected").html()
Просто используйте
$('#SelectBoxId option:selected').text();
Для получения текста, указанного в списке
$('#SelectBoxId').val();
Для получения выбранного значения индекса
Я знаю, что никто не просит здесь решения jQuery, но стоит упомянуть, что с jQuery вы можете просто спросить: $('#selectorid').val()