更改选择框值文本

时间:2012-03-10 16:56:58

标签: javascript jquery keypress

我有一个文本框和一个选择框。

<input type="text" />

<select>
<option value=1>Test1</option>
<option value=2>Test2</option>
</select>

现在我想要当用户在文本框中输入任何内容时,更改值= 2文本。

我试过这个,但看起来不行。

$(document).ready(function () {
$("#textbox").keyup(function () {




    $("select#sync[value='2']").text($(this).val());
});

});

5 个答案:

答案 0 :(得分:3)

除了您没有提供元素ID之外,问题是您需要访问<option>元素(该元素的值为2 - 没有{{} 1}})。此外,ID是唯一的,因此使用<select value=2>(应该)与select#sync相同:

#sync

答案 1 :(得分:2)

<input type="text" id="textbox" />
<select>
   <option value="1">Test1</option>
   <option value="2">Test2</option>
</select>​

$(document).ready(function () {
    $("#textbox").keyup(function() {
       $("select option[value='2']").text($(this).val());
    });​
});

http://jsfiddle.net/gxaWE/

答案 2 :(得分:0)

你可以尝试

$("#sync").val($(this).val());

前提是用户只输入范围

的值

DEMO

答案 3 :(得分:0)

$("#text_box").keyup(function() {
 $("#sync option[value='2']").text($(this).val());
});

    

这是小提琴显示它的工作: http://jsfiddle.net/bRw8Z/1/

更改选择选项编号2文本。那是你想要的吗?

答案 4 :(得分:0)

我在这里看到一些问题:

  1. 设置innerText元素的<select>没有意义;你想要设置它的值,
  2. #textbox选择器实际上不会选择任何内容。
  3. 如果您的输入与<option>的{​​{1}}属性不完全匹配,则会选择第一个value
  4. 如果<option>属性与文本输入的值匹配,则此代码段将选择<option>

    value

    http://jsfiddle.net/2XxRQ/1/