类别:程序开发

日期:2022-05-24 浏览:2959 评论:0

select 元素用来创建下拉列表。
select 元素中的option标签定义了列表中的可用选项。
select 元素是一种表单控件,可用于在表单中接受用户输入。

  src=http___www.24ketang.cn_wp-content_uploads_2020_02_20200206105036-5e3bef7c701f0.jpg&refer=http___www.24ketang.webp.jpg

  HTML页面获取值

document.getElementById("ddlResourceType").options.add(new Option(text,value));

  下拉框取值和赋值:

<select id="ddlResourceType" οnchange="getvalue(this)"></select>
1、动态删除select中的所有options:
document.getElementById("ddlResourceType").options.length=0;

2、动态删除select中的某一项option:
document.getElementById("ddlResourceType").options.remove(index); 

3、动态添加select中的项option: 
document.getElementById("ddlResourceType").options.add(new Option(text,value)); 
上面的操作在IE和火狐中都能测试成功,其实用标准的DOM操作也可以,就是document.createElement,appendChild,removeChild之类的。

注意:下面要说下在取值方面,自己遇到的一个坑,很隐藏的坑,大家都知道,如何获取选中的某一项option的值,当初在用chrome调试的时候,打印出了原生select对象,找到了selectedOptions这个选中项的数组属性,正常情况下,单选下拉框的该属性只有一个值,默认可以使用selectedOptions[0]这样的方式去获取,是的,我当时就是这样去弄的,结果项目上线后大概将近半个月的时候,运营那边报告说,客户在IE浏览器下,下拉框没有数据显示,我当时就想,下拉框动态获取的数据肯定是取数据的时候,出现错误了,然后逐一去排查,发现报错的原因是ie下面select原生对象里,是没有selectedOptions这样的属性的,那么只能另辟蹊径来解决了,我仔细找了下剩余的一些属性,发现  找到了 selctedIndex这样的一个好属性,一看字面意思就明白了,就是选中项的index值啊,这就好办了啊,直接用options[selectedIndex]去访问不就好了么,到此,问题顺利解决。


本文标题:JS如何动态给select的option赋值?
本文链接:https://vtzw.com/post/1003.html
作者授权:除特别说明外,本文由 零一 原创编译并授权 零一的世界 刊载发布。
版权声明:本文不使用任何协议授权,您可以任何形式自由转载或使用。
 您阅读本篇文章共花了: 

 可能感兴趣的文章

评论区

发表评论 / 取消回复

必填

选填

选填

◎欢迎讨论,请在这里发表您的看法及观点。

最新留言