使用jquery更改选定的索引

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

 No 1 No 2   ONE TWO  

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

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

我建议:

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

JS小提琴演示 。

参考文献:

  • change()
  • eq()
  • prop()

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

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

工作演示

使用jQuery 1.7.2

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

工作演示

selectedIndex从0开始。

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

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