Задать вопрос
@megamutex

Как имитировать нажатие на опцию выпадающего списка?

Здравствуйте. Как можно имитировать нажатие на определенную опцию выпадающего списка? Например, есть кнопки
<a class="but-1">butt</a>
<a class="but-2">butt</a>

И список
<select>
<option value="val1">value1</option>
<option value="val2">value2</option>
</select>

Как сделать так, чтобы при нажатии на кнопку .but-1 имитировалось нажатие, как мышкой на опцию val1?
  • Вопрос задан
  • 2672 просмотра
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
xa3apg
@xa3apg
Unity / Back-end / Front-end Developer
Зачем именно клик? ведь при смене select сгенерирует change, на который можно как раз таки подписаться. Сменить можно как угодно, к примеру.
$('.but-1').on('click',(e)=>{
	$('select option:eq(0)').prop('selected',true);    
});
Ответ написан
Комментировать
@Mycolaos
Обработайте событие нажатия на кнопку. Например:

<a id='btn1' onclick='selectCity(event)'>Moscow</a>
<a id='btn2' onclick='selectCity(event)'>Tokyo</a>

<select id='mySelect'>
  <option value='0'>Moscow</option>
  <option value='1'>Tokyo</option>
</select>

<script>
function selectCity(e) {
if(e.target.id === 'btn1')
  document.getElementById('mySelect').selectedIndex = '0';
else
if(e.target.id === 'btn2')
  document.getElementById('mySelect').selectedIndex = '1';
}
</script>
Ответ написан
Ivanq
@Ivanq
Знаю php, js, html, css
$(".but-1").click(function() {
    $(".val-1").click();
});


<a class="but-1">butt</a>
<a class="but-2">butt</a>

<select>
<option class="val-1" value="val1">value1</option>
<option class="val-2" value="val2">value2</option>
</select>
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы