类别:程序开发
日期:2022-05-24 浏览:2920 评论:0
select 元素用来创建下拉列表。
select 元素中的option标签定义了列表中的可用选项。
select 元素是一种表单控件,可用于在表单中接受用户输入。
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]去访问不就好了么,到此,问题顺利解决。
发表评论 / 取消回复