使用 jQuery 从下拉列表(选择框)中获取选定的文本

IT技术 javascript jquery dom drop-down-menu jquery-selectors
2021-01-13 05:38:14

如何从jQuery的下拉列表获取选定的文本(不是选定的值)

6个回答
$("#yourdropdownid option:selected").text();
$('select').children(':selected')是最快的方法:jsperf.com/get-selected-option-text
2021-03-15 05:38:14
我认为这应该是$("#yourdropdownid").children("option").filter(":selected").text()因为 is() 返回对象是否与选择器匹配的布尔值。
2021-04-02 05:38:14
我第二个关于 is() 返回布尔值的评论;或者,使用以下小改动: $('#yourdropdownid').children("option:selected").text();
2021-04-04 05:38:14

尝试这个:

$("#myselect :selected").text();

对于 ASP.NET 下拉列表,您可以使用以下选择器:

$("[id*='MyDropDownId'] :selected")

例如,此处发布的答案,

$('#yourdropdownid option:selected').text();

对我不起作用,但这确实:

$('#yourdropdownid').find('option:selected').text();

它可能是旧版本的 jQuery。

如果您已经在变量中提供了下拉列表,那么这对我有用:

$("option:selected", myVar).text()

关于这个问题的其他答案对我有帮助,但最终 jQuery 论坛线程$(this + "option:selected").attr("rel") option selected 在 IE 中不起作用

更新:修复了上面的链接

这对我有用

$("#dropdownid").change(function() {
    alert($(this).find("option:selected").text());
});

如果元素是动态创建的

$(document).on("change", "#dropdownid", function() {
    alert($(this).find("option:selected").text());
});