How to get label of select option with jQuery?

<select>
<option value="test">label </option>
</select>

The value can be retrieved by $select.val().

What about the label?

Is there a solution that will work in IE6?

157934 次浏览

You're looking for $select.html()

Http://api.jquery.com/html/

试试这个:

$('select option:selected').text();
<SELECT id="sel" onmouseover="alert(this.options[1].text);"
<option value=1>my love</option>
<option value=2>for u</option>
</SELECT>
$("select#selectbox option:eq(0)").text()

“ option: eq (0)”中的0索引可以交换您想要检索的任何索引选项。

Hi 首先将 id 指定为 select

<select id=theid>
<option value="test">label </option>
</select>

然后你可以像这样调用选中的标签:

jQuery('#theid option:selected').text()

要在下拉列表中获得特定选项的标签,您可以尝试这个——

$('.class_of_dropdown > option[value='value_to_be_searched']').html();

或者

$('#id_of_dropdown > option[value='value_to_be_Searched']').html();

For reference there is also a secondary label attribute on the option tag:

//returns "GET THIS" when option is selected
$('#selecter :selected').attr('label');

Html

<select id="selecter">
<option value="test" label="GET THIS">
Option (also called label)</option>
</select>

Try this:

$('select option:selected').prop('label');

这将拉出 <option>元素的两种样式的显示文本:

  • <option label="foo"><option> -> "foo"
  • - > "bar"

如果它在元素中同时具有 label属性和文本,那么它将使用与浏览器相同的 label属性。

对于后代,这是在 jQuery 3.1.1下测试的

为此创建了工作 Plunker。 Https://plnkr.co/edit/vr9agocwooul9tevieen $('#console').append("<br/>"+$('#test_s :selected').text())

在现代浏览器中,你不需要使用 JQuery,而是使用

document.querySelectorAll('option:checked')

Or specify any DOM element instead of document

I found this helpful

$('select[name=users] option:selected').text()

当使用 this关键字访问选择器时。

$(this).find('option:selected').text()