Como posso programar o valor de um elemento de caixa de seleção usando JavaScript?

Eu tenho o seguinte elemento HTML <select>:

<select id="leaveCode" name="leaveCode">
  <option value="10">Annual Leave</option>
  <option value="11">Medical Leave</option>
  <option value="14">Long Service</option>
  <option value="17">Leave Without Pay</option>
</select>

Utilizando uma função JavaScript com o número leaveCode como parâmetro, como seleciono a opção apropriada na lista?

Solução

Você pode usar esta função:

selectElement('leaveCode', '11')

função selectElement(id, valueToSelect) {
    let element = document.getElementById(id);
    element.value = valueToSelect;
}
Comentários (11)

Não respondendo à pergunta, mas você também pode selecionar por índice, onde i é o índice do item que você deseja selecionar:

var formObj = document.getElementById('myForm');
formObj.leaveCode[i].selected = true;

Você também pode percorrer os itens para selecionar por valor de exibição com um loop:

for (var i = 0, len < formObj.leaveCode.length; i < len; i++) 
    if (formObj.leaveCode[i].value == 'xxx') formObj.leaveCode[i].selected = true;
Comentários (1)

I'receio que I'sou incapaz de testar isso no momento, mas no passado, acredito que tinha que dar uma identificação a cada tag de opção, e então eu fiz algo parecido:

document.getElementById("optionID").select();

Se isso não'não funcionar, talvez'o aproxime de uma solução :P

Comentários (1)