JavaScript kullanarak bir seçim kutusu öğesinin değerini programlı olarak nasıl ayarlayabilirim?

Aşağıdaki HTML <select> öğesine sahibim:

<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>

Parametre olarak leaveCode numarasını içeren bir JavaScript işlevi kullanarak, listedeki uygun seçeneği nasıl seçerim?

Çözüm

Bu işlevi kullanabilirsiniz:

selectElement('leaveCode', '11')

function selectElement(id, valueToSelect) {
    let element = document.getElementById(id);
    element.value = valueToSelect;
}
Yorumlar (11)

Soruyu yanıtlamıyorum, ancak i'nin seçmek istediğiniz öğenin indeksi olduğu indekse göre de seçim yapabilirsiniz:

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

Ayrıca bir döngü ile ekran değerine göre seçmek için öğeler arasında döngü yapabilirsiniz:

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

Korkarım şu anda bunu test edemiyorum, ancak geçmişte, her seçenek etiketine bir kimlik vermem gerektiğine inanıyorum ve sonra şöyle bir şey yaptım:

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

Bu işe yaramazsa, belki sizi bir çözüme yaklaştırır :P

Yorumlar (1)