繁体   English   中英

如何使用Javascript通过选项的值在选择框中选择一个选项?

[英]How to select an option in a select box by the value of the option using Javascript?

我有一个选择框,其中装有所有可用选项。 当用户单击我的应用程序中的记录时,我得到一个xml响应,其中包含该记录的选项值。 我想使用javascript来为选择框中的特定选项设置选择的索引,而不必重新加载选择框。 是否有一种简单的方法可以根据选项的值或名称查找选项的索引? 然后,我可以将该选项设置为选定的索引。

我将第二次托比的答案。 不过,如果由于某种原因您不能使用现有的库,那么使用普通的javascript就足够了:

function selectByValue(el, value) {
    for (var i=0, len=options.length; i<len; i++) {
        if (el.options[i].value == value) {
            el.selectedIndex = i;
            break;
        }
    }
}

如果您想使用该选项的文本,请将.value替换为.text 我认为您的意思是“文本”,因为选择选项没有“名称”属性。

这将非常接近:

function find_index(options, value) {
    for (var i=0; i<options.length; i++) {
        if (options[i].value == value) {
            return i;
        }
    }
    return -1
}

function set_selected_option(select_element, value) {
    var index = find_index(select_element.options, value)
    if (index != -1){
        select_element.selectedIndex = index;
    }
}

我建议看看jQuery或Prototype之类的JS库。 他们使这种事情变得容易。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM