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


当前回答

$("#dropdownID").change(function(){
  alert($('option:selected', $(this)).text());
});

其他回答

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

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

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

更新:修复了上述链接

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

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

这对我有用

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

如果元素是动态创建的

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

或者你可以用这个

$("#dropdownid").change(function() {
    console.log($(this).val());
});