Помогите сделать скрипт, чтобы найти в select'e значение по value в option
Помогите пожалуйста решить проблемку в проекте. Мне нужно, чтобы при нажатии на кнопку Choose в select'e выбралось значение, которое ввел в input. Но не по значению option, а по значению value в этом option. Вот код примерно похожий:
<select id="user_id" class="js-select" placeholder="Выберите уголь" required name="km" onchange="update(event.target, 'b1')" class="">
<option value="один">1</option>
<option value="два">2</option>
<option value="три">3</option>
</select>
<input id="inp">
<input type="button" value="choose"
onclick="a=document.getElementById('user_id');b=document.getElementById('inp');for(i=1;i<a.options.length; i++) {if (a.options[i].innerHTML==b.value) {a.options[i].selected=true; return}}"
>
Ответы (1 шт):
Автор решения: Dovgal Dima
→ Ссылка
function selectByValue() {
const selectElement = document.getElementById('user_id');
const inputValue = document.getElementById('inp').value;
for (let i = 0; i < selectElement.options.length; i++) {
if (selectElement.options[i].value === inputValue) {
selectElement.options[i].selected = true;
return;
}
}
}
<select id="user_id" class="js-select" placeholder="Выберите уголь" required name="km" >
<option value="один">1</option>
<option value="два">2</option>
<option value="три">3</option>
</select>
<input id="inp">
<input type="button" value="choose" onclick="selectByValue()">
Этот код сравнивает значение, введенное в поле input, с атрибутом value каждой опции в select, и устанавливает выбранную опцию с соответствующим значением value.