select <select> item by value

一个人想着一个人 提交于 2019-11-27 02:44:48

问题


i have

<select id="x">
    <option value="5">hi</option>
    <option value="7">hi 2</option>
</select>

I want a javascript function that enables me to select and display the <option> as default one by id. In other words, I want to do a setOption(5) and the <option> with the value "5" to be displayed in the combobox as a default .

Is that possible?


回答1:


If you can, with ES6...

function setOption(selectElement, value) {
    return [...selectElement.options].some((option, index) => {
        if (option.value == value) {
            selectElement.selectedIndex = index;
            return true;
        }
    });
}

...otherwise...

function setOption(selectElement, value) {
    var options = selectElement.options;
    for (var i = 0, optionsLength = options.length; i < optionsLength; i++) {
        if (options[i].value == value) {
            selectElement.selectedIndex = i;
            return true;
        }
    }
    return false;
}

setOption(document.getElementById('my-select'), 'b');

See it!

If it returns false, then the value could not be found :)




回答2:


If you are using jQuery (1.6 or greater)

$('#x option[value="5"]').prop('selected', true)



回答3:


Using Javascript:

document.getElementById('drpSelectSourceLibrary').value = 'Seven';



回答4:


If someone looking for jquery solution, use the val() function.

$("#select").val(valueToBeSelected);

In Javascript,

document.getElementById("select").value = valueToBeSelected; 



回答5:


You should not need even javascript to get involved, use simply the selected attribute:

<select id="x">
  <option value="5" selected>hi</option>
  <option value="7">hi 2</option>
</select>


来源:https://stackoverflow.com/questions/4324141/select-select-item-by-value

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!