获得下拉值不仅仅是ID

时间:2011-10-13 14:26:36

标签: javascript jquery html

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

我知道我失踪了,但我现在看不到它。

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

以下是我到目前为止的信息,#id_maturity_letter是下拉列表,而#message_text是我试图填充的textarea。

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

    });

}); 

2 个答案:

答案 0 :(得分:2)

您的代码是正确的,请确保您的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() );

答案 1 :(得分:1)

如果我正确理解您的问题,您需要所选选项的文本而不是其值。如果确实如此,您可以将选定的<option>元素与:selected选择器匹配,然后在生成的对象上调用text()

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