使用jquery更改选定的索引

时间:2012-07-03 11:19:51

标签: jquery

您需要更改另一个已更改的选定索引。 例: 我有

<select id="selector">
<option>No 1</option>
<option>No 2</option>
</select>
<select id="selected">
<option>ONE</option>
<option>TWO</option>
</select>

现在我希望$ selector选择索引在#selector的索引改变时改变。就像当我改为“No 2”时,另一个组合框将变为“TWO”。原谅我的新手问题,但我是jquery的新手^^

5 个答案:

答案 0 :(得分:29)

$('#selector').change(function() {
    var idx = this.selectedIndex;        
    $("select#selected").prop('selectedIndex', idx);  
});

答案 1 :(得分:7)

我建议:

$('#selector').change(
    function(){
        var index = this.selectedIndex;
        $('#selected option').eq(index).prop('selected',true);
    });

JS Fiddle demo

参考文献:

答案 2 :(得分:3)

只使用常规JavaScript,因为jQuery似乎没必要:

document.getElementById('selector').onchange = function() {
    document.getElementById('selected').selectedIndex = this.selectedIndex;
}

Working DEMO

答案 3 :(得分:3)

使用 jQuery 1.7.2

$(document).on('change', '#selector', function (){
   var si =  this.selectedIndex
    $('#selected option').eq(si).prop('selected',true);
});​

Working DEMO

答案 4 :(得分:0)

selectedIndex从0开始。

如果下拉列表允许多个选择,它将仅返回所选第一个选项的索引 值“-1”将取消选择所有选项(如果有) 如果未选择任何选项,则selectedIndex属性将返回-1。

$('#idselect').change(function() {
    var index = this.selectedIndex;
    //...
});