如何从jQuery的下拉列表中获取所选文本(而不是所选值)?


当前回答

 $("#selectID option:selected").text();

您可以使用任何jQuery选择器来代替#selectID,例如.selectClass using class。

如本文文档中所述。

:selected选择器适用于<option>元素。它不适用于复选框或无线电输入;用途:已检查。

.text()根据此处的文档。

获取匹配元素集合中每个元素的组合文本内容,包括其后代。

因此,您可以使用.text()方法从任何HTML元素中获取文本。

有关详细说明,请参阅文档。

其他回答

这对我有用

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

如果元素是动态创建的

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

以下内容对我有用:

$.trim($('#dropdownId option:selected').html())

Use:

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

对于正在使用SharePoint列表且不想使用长时间生成的id的用户,这将起作用:

var e = $('select[title="IntenalFieldName"] option:selected').text();

Try:

$var = jQuery("#dropdownid option:selected").val();
   alert ($var);

或者要获取选项的文本,请使用text():

$var = jQuery("#dropdownid option:selected").text();
   alert ($var);

更多信息:

http://api.jquery.com/val/http://api.jquery.com/text/