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


当前回答

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

其他回答

如果变量中已经有下拉列表,这对我很有用:

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

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

更新:修复了上述链接

对于多选:

$("#yourdropdownid :selected").map(function(i, v) { return $.trim($(v).text()); }

这对我有用

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

如果元素是动态创建的

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

如果要将结果作为列表,请使用:

x=[];
$("#list_id").children(':selected').each(function(){x.push($(this).text());})