JQuery выбрать вариант с помощью кнопки - PullRequest
3 голосов
/ 09 августа 2011

Можно ли выбрать специальный элемент <option> с помощью jQuery, нажав кнопку?

Например:

<a id="item1" href="#">Item 1</a>
<a id="item2" href="#">Item 2</a>
<a id="item3" href="#">Item 3</a>

<form>
.......
<select id="items" name="items">
<option value="1">I dont know</option>
<option value="2">Item 1</option>
<option value="3">Item 2</option>
<option value="4">Item 3</option>
</select>
.........

</form>

Если вы нажмете вторую кнопку, то в форме автоматически будет выбран второй вариант. Возможно ли это?

Ответы [ 4 ]

3 голосов
/ 09 августа 2011

Это простой способ сделать jQuery.

$('a').click(function() {
    var select_num = $(this).index() + 1;
    $('#items option').eq(select_num).attr('selected', 'selected');
});

Вот пример скрипка.

0 голосов
/ 09 августа 2011

Попробуйте это:

$('#item1').click( function() {
   $('#items option[value="2"]').attr('selected', true); 
});

Смотрите здесь: http://jsfiddle.net/RVUDa/

0 голосов
/ 09 августа 2011

Оберните ваши теги в элементе блока с идентификатором.Это поможет сделать его более эффективным, если у вас есть много элементов, по которым можно щелкнуть, потому что для каждого элемента в списке используется только один прослушиватель вместо одного прослушивателя.

<div id="buttons">
  <a id="item1" href="#">Item 1</a>
  <a id="item2" href="#">Item 2</a>
  <a id="item3" href="#">Item 3</a>
</div>

Тогда для вашего кода jQuery выможет сделать это:

$('#buttons').click(function(e)
{
   var num = $(e.target).index() + 1;
   $('option:nth-child(' + num + ')', '#items').attr('selected', 'selected');
});
0 голосов
/ 09 августа 2011

Попробуйте (ссылка на элемент 2 выбирает элемент 2 в списке):

$('#item2').click(function(){
  $('#items option:nth-child(3)').attr('selected', 'selected');
});

И аналогичная функция для каждой кнопки / ссылки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...