Изменение выбранного индекса с помощью jquery

Привет, нужно изменить выбранный индекс a, когда другой был изменен. Пример: я

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

теперь я хочу, чтобы индекс $selected изменялся при изменении индекса #selector. Например, когда я изменяю значение "Нет 2", другое поле со списком будет изменено на "TWO". простите меня за вопрос новичков, но im new для jquery ^^

5 ответов

$('#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 Fiddle demo.

Литература:


Просто используя обычный JavaScript, потому что jQuery кажется ненужным для этого:

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

Рабочая DEMO


с jQuery 1.7.2

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

Рабочая DEMO


Выбранное ************* начинается с 0.

Если раскрывающийся список позволяет несколько вариантов выбора, он будет возвращать только индекс первой выбранной опции. Значение "-1" отменит выбор всех параметров (если есть). Если опция не выбрана, свойство selectedIndex вернет -1.

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

licensed under cc by-sa 3.0 with attribution.