根据selectlist选项更新输入字段

时间:2011-05-27 12:16:19

标签: javascript jquery

我有以下HTML

<select name="title" id="title">
  <option value="Mrs" >Mrs</option>
  <option value="Mr" >Mr</option>
  <option value="Miss" >Miss</option>
  <option value="Dr" >Dr</option>
</select>

<input type="text" name="gtitle" id="gift_title" value="" />

现在默认情况下Mrs显示为选择列表的第一个选项。我需要做的是获取此值并将其显示在input字段中。用户随后的选择,即他/她选择Mr,也必须更新此输入字段。

我希望我能在jQuery中使用它,但我不知道如何获得这些值。

由于

3 个答案:

答案 0 :(得分:1)

您可以订阅下拉列表的.change()事件并更新输入值:

$(function() {
    // initialize the value of the input field to the selected value
    // of the dropdown list:
    $('#gift_title').val($('#title').val());

    $('#title').change(function() {
        // when the value of the dropdown list changes
        // update the input field
        $('#gift_title').val($(this).val());
    });
});

这是一个live demo

答案 1 :(得分:0)

<select name="title" id="title">
  <option value="Mrs" >Mrs</option>
  <option value="Mr" >Mr</option>
  <option value="Miss" >Miss</option>
  <option value="Dr" >Dr</option>
</select>

<input type="text" name="gtitle" id="gift_title" value="Mrs" />

我将默认值添加到html

$('#title').change(function(){
    $('#gift_title').val(this.value);
});

working demo

但是我没有看到任何理由只是在你提交的时候使用select值那里应该没有输入feild

答案 2 :(得分:0)

除了已经提供的awnsers之外,我建议如下,使用load的复选框的默认值填充输入字段。 在Darin代码的第4行和第5行之间插入类似的内容:

$('#gift_title').val($('#title').val());

或者考虑将更改回调函数显式化,以便可以重用它。

希望这有帮助!