获取下拉列表的值,而不仅仅是ID

get value of dropdown not just ID

本文关键字:不仅仅是 ID 下拉列表 获取      更新时间:2023-09-26

我正试图用我的下拉框中的任何值填充文本字段。现在我得到的是所选项目的ID,列表中的第一个是1,等等。

我知道我错过了什么愚蠢的东西,但我现在看不出来。

如何获得所选项目的值,而不是ID?

这是我目前所做的,#id_maturity_letter是下拉框,#message_text是我要填充的文本区域。

$("#id_maturity_letter").change(function() {
    var id = $(this).val();
    $('#message_text').val($('#id_maturity_letter').val());
    $.getJSON('', {id:id}, function(json) {
    });
}); 

您的代码是正确的,请确保您的html是按您的意愿创建的:

<select id='id_maturity_letter'>
   <option id='1' value='1'>one</option>
   <option id='2' value='2'>two</option>
   <option id='3' value='3'>three</option>
</select>

当然会返回一个等于id

的值

所以如果你需要文字:

 $("#message_text").val( $("option:selected", this).text() );

如果我正确理解了你的问题,你想要的是所选选项的文本而不是它的值。如果确实是这种情况,您可以将选中的<option>元素与:selected选择器匹配,然后在结果对象上调用text():

$("#id_maturity_letter").change(function() {
    var id = $(this).val();
    $("#message_text").val($("option:selected", this).text());
});