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


当前回答

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

如果您使用asp.net并编写

<Asp:dropdownlist id="ddl" runat="Server" />

那么你应该使用

$('#<%=ddl.Clientid%> option:selected').text();

其他回答

var someName = "Test";

$("#<%= ddltest.ClientID %>").each(function () {
    $('option', this).each(function () {
        if ($(this).text().toLowerCase() == someName) {
            $(this).attr('selected', 'selected')
        };
    });
});

这将帮助你找到正确的方向。如果您需要进一步的帮助,请告诉我,上面的代码经过了充分测试。

这里张贴的答案,例如,

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

对我来说没用,但这样做了:

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

它可能是jQuery的旧版本。

在jQuery中的下拉列表/选择更改事件上选择文本和所选值

$("#yourdropdownid").change(function() {
    console.log($("option:selected", this).text()); //text
    console.log($(this).val()); //value
})

这对我有用:

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

jQuery版本:1.9.1

这对我来说很有用:

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

我正在使用jQuery 1.10.2