码云笔记前端博客
Home > 前端技术 > 如何通过js动态让select控件选中option指定的值

如何通过js动态让select控件选中option指定的值

2018-10-12 分类:前端技术 作者:码云 阅读(813)

本文共计822个字,预计阅读时长需要3分钟。

文章内容如标题所说,这也是最近在做项目中遇到的需求问题,虽然很简单,但是我还是将它作为笔记整理下来下次遇到直接拿来用即可,也为后来需要帮助的小伙伴做个参考。具体要求:当用户对弹框里的内容进行编辑时,根据当初创建选中的select中option值,动态设置select中option选中,那么如何通过js动态设置select中option选中呢?这里需要先为大家补充一下select options集合的知识。推荐阅读《js通过另外一个下拉菜单已选选项来修改当前下拉菜单的选项》获得更多关于select知识。

Select options 集合

定义和用法

option集合可返回包含<select>元素中所有<option>的一个数组。

注意:数组中的每个元素对应一个<option>标签-由0起始。

语法

1
selectObject.options

属性

属性 描述
length 返回集合的option元素数目
selectedIndex 设置或者返回select对象已选选项的索引值。(以 0 起始)

方法

方法 描述
[index] 以数字形式指定元素索引 (以 0 开始)
[add(element[,index])] 在集合中添加option元素
item(index) 以数字索引返回集合中元素
namedItem(name) 以名称为索引返回集合元素
remove(index) 从集合中移除元素

浏览器支持

所有主要浏览器都支持 options 集合

实例

循环输出下拉列表中的所有选项:

HTML代码:

1
2
3
4
5
6
7
8
9
10
<form>
你最喜欢的水果:
<select id="mySelect">
    <option>Apple</option>
    <option>Orange</option>
    <option>Pineapple</option>
    <option>Banana</option>
</select>
</form>
<button type="button" onclick="displayResult()">显示所有选项的文本</button>

JS代码:

1
2
3
4
5
6
7
8
9
function displayResult(){
    var x=document.getElementById("mySelect");
    var txt="All options: ";
    var i;
    for (i=0;i<x.length;i++){
        txt=txt + "\n" + x.options[i].text;
    }
    alert(txt);
}

效果展示:

循环输出下拉列表中的所有选项

以上就是options的知识,记不清的私下做做功课,好了,接着看一下我们今天要实现的需求代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/**
 * 设置select控件选中
 * @param selectId select的id
 * @param checkValue 选中option的值
 * @author 码云笔记
*/  
function select_option_checked(selectId, checkValue){  
    var select = document.getElementById(selectId);  

    for (var i = 0; i < select.options.length; i++){  
        if (select.options[i].value == checkValue){  
            select.options[i].selected = true;  
            break;  
        }  
    }  
}

如何调用

1
2
// 设置select选中该班组
select_option_checked('sel_group', group_id);

注:不要传'#sel_group',习惯了jquery,会出问题的。

以上就是今天关于如何动态通过js让select控件选中指定的值的全部内容希望对大家有用。

「除特别注明外,本站所有文章均为码云笔记原创,转载请保留出处!」

赞(3) 打赏

觉得文章有用就打赏一下文章作者

支付宝
微信
3

觉得文章有用就打赏一下文章作者

支付宝
微信

上一篇:

下一篇:

你可能感兴趣

共有 0 条评论 - 如何通过js动态让select控件选中option指定的值

博客简介

码云笔记 mybj123.com,一个专注Web前端开发技术的博客,主要记录和总结博主在前端开发工作中常用的实战技能及前端资源分享,分享各种科普知识和实用优秀的代码,以及分享些热门的互联网资讯和福利!码云笔记有你更精彩!
更多博客详情请看关于博客

精彩评论

站点统计

  • 文章总数: 458 篇
  • 分类数目: 13 个
  • 独立页面: 8 个
  • 评论总数: 215 条
  • 链接总数: 14 个
  • 标签总数: 1011 个
  • 建站时间: 495 天
  • 访问总量: 8647952 次
  • 最近更新: 2019年10月21日