如何使用 jQuery 获取选择选项的标签?

Posted

技术标签:

【中文标题】如何使用 jQuery 获取选择选项的标签?【英文标题】:How to get label of select option with jQuery? 【发布时间】:2011-01-11 15:44:27 【问题描述】:
<select>
<option value="test">label </option>
</select>

值可以通过$select.val()检索。

label 呢?

是否有适用于 IE6 的解决方案?

【问题讨论】:

你的意思是如何获取选中的值,选中的值?您的案例标签是哪个? 这个问题应该改写成“How to get text of select option with jQuery?”并且所有对标签的引用都应替换为文本以避免与标签属性混淆。 【参考方案1】:

试试这个:

$('select option:selected').text();

【讨论】:

这并不总是正确的。选项的显示描述也可以由“标签”属性指定(w3schools.com/tags/att_option_label.asp#gsc.tab=0 和w3.org/TR/html401/interact/forms.html#h-17.6 要获取 label 属性,可以使用:jQuery('#theid option:selected').attr('label')【参考方案2】:

你好,先给选择一个id作为

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

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

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

【讨论】:

【参考方案3】:

作为参考,选项标签上还有一个辅助label 属性:

//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>

【讨论】:

【参考方案4】:

要在下拉列表中获取特定选项的标签,您可以使用这个 --

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

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

【讨论】:

【参考方案5】:

我觉得这很有帮助

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

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

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

【讨论】:

【参考方案6】:

试试这个:

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

这将为&lt;option&gt; 元素的两种样式提取显示的文本:

&lt;option label="foo"&gt;&lt;option&gt; -> "foo" &lt;option&gt;bar&lt;option&gt; -> "bar"

如果它同时具有label 属性和元素内的文本,它将使用label 属性,这与浏览器的行为相同。

为了后代,这是在 jQuery 3.1.1 下测试的

【讨论】:

【参考方案7】:
$("select#selectbox option:eq(0)").text()

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

【讨论】:

【参考方案8】:
<SELECT id="sel" onmouseover="alert(this.options[1].text);"
<option value=1>my love</option>
<option value=2>for u</option>
</SELECT>

【讨论】:

【参考方案9】:

为此创建了工作 Plunker。 https://plnkr.co/edit/vR9aGoCwoOUL9tevIEen $('#console').append("&lt;br/&gt;"+$('#test_s :selected').text())

【讨论】:

【参考方案10】:

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

document.querySelectorAll('option:checked')

或者指定任何 DOM 元素而不是 document

【讨论】:

【参考方案11】:

您正在寻找$select.html()

http://api.jquery.com/html/

【讨论】:

这只是返回所有选项元素的 html。标签文本在 /in/ 某处,但这不是获取它的最有效方式。

以上是关于如何使用 jQuery 获取选择选项的标签?的主要内容,如果未能解决你的问题,请参考以下文章

如何使 jQuery 自动完成列表显示所有选项 onfocus 并在选择选项后隐藏?

Jquery - 如何从标签中获取输入值

如何使用 jQuery 获取选择的所有选项?

如何使 <select> 的第一个选项不使用 jquery 向上移动? [关闭]

当使用angular8单击选项卡时,如何使选项卡聚焦在第一个字段上

jQuery Vertical Tabs使标签内容显示为内联块