Javascript 更改选择框值文本

Javascript 更改选择框值文本,javascript,jquery,keypress,Javascript,Jquery,Keypress,我有一个文本框和一个选择框 <input type="text" /> <select> <option value=1>Test1</option> <option value=2>Test2</option> </select> }) 你可以试试 $("#sync").val($(this).val()); 前提是用户仅键入范围内的值 你可以试试 $("#sync").val($(this).val()

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

<input type="text" />

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

你可以试试

$("#sync").val($(this).val());
前提是用户仅键入范围内的值

你可以试试

$("#sync").val($(this).val());
前提是用户仅键入范围内的值


除了您没有给出元素ID之外,问题是您需要访问一个值为2的元素-没有。此外,ID是唯一的,因此使用selectsync is应与使用sync相同:


除了您没有给出元素ID之外,问题是您需要访问一个值为2的元素-没有。此外,ID是唯一的,因此使用selectsync is应与使用sync相同:

​ ​

下面是小提琴,显示它的工作原理:

它会更改选择选项2的文本。这就是你想要的吗

​ ​

下面是小提琴,显示它的工作原理:


它会更改选择选项2的文本。这就是你想要的吗?

我发现这里有几个问题:

设置元素的innerText没有意义;您要改为设置其值, 文本框选择器实际上不会选择任何内容。 如果您的输入与的值属性不完全匹配,则会选择第一个。 如果其value属性与文本输入的值匹配,则此代码段将选择

$(document).ready(function () {
    $("input").keyup(function () {
        var $select = $("select"),
            value = $(this).val();
        if($select.find('option[value="' + value + '"]').length){
            $select.val(value);
        }
    });
});​

我在这里看到一些问题:

设置元素的innerText没有意义;您要改为设置其值, 文本框选择器实际上不会选择任何内容。 如果您的输入与的值属性不完全匹配,则会选择第一个。 如果其value属性与文本输入的值匹配,则此代码段将选择

$(document).ready(function () {
    $("input").keyup(function () {
        var $select = $("select"),
            value = $(this).val();
        if($select.find('option[value="' + value + '"]').length){
            $select.val(value);
        }
    });
});​
$(document).ready(function () {
    $("#textbox").keyup(function() {
       $("select option[value='2']").text($(this).val());
    });​
});
$("#text_box").keyup(function() {
 $("#sync option[value='2']").text($(this).val());
});
$(document).ready(function () {
    $("input").keyup(function () {
        var $select = $("select"),
            value = $(this).val();
        if($select.find('option[value="' + value + '"]').length){
            $select.val(value);
        }
    });
});​