<select> 元素用于创建下拉列表;而<option> 元素用于定义列表中待选择的选项。列表通常会把首个选项显示为被选选项。
提示:<select> 元素是一种表单控件,可用于在表单中接受用户输入。
属性:
autofocus :下拉列表在页面加载时自动获得焦点,是一个布尔属性;
disabled:下拉列表应该被禁用,被禁用的下拉列表既不可用,也不可点击。比如你可以设置 disabled 属性,直到满足某些条件(比如选择一个复选框),才恢复用户对该下拉列表的使用。然后,可以使用 JavaScript 来移除 disabled 属性的值,以使下拉列表变为可用状态。
multiple :可同时选择多个选项。
name :下拉列表的名称。用于在 JavaScript 中引用元素,或者在表单提交后引用表单数据。
required :用户在提交表单前必须选择一个值。
size :下拉列表中可见选项的数目。如果 size 属性的值大于 1,但是小于列表中选项的总数目,浏览器会显示出滚动条,表示可以查看更多选项。
1. 如何设置默认选中呢
设置默认选中可在option 中添加 selected = "selected",具体举例如下:
<option value="2" selected="selected">test2</option>
2. 如何动态创建select对象呢?
(1)先动态创建select
- ① var mySel = document.createElement("select"); //创建select
- ② mySel.id = "citySel"; //为select添加id
- ③ document.body.appendChild(mySel); //将select追加到body中
- //创建select
- ② mySel.id = "citySel"; //为select添加id
- ③ document.body.appendChild(mySel); //将select追加到body中
(2)动态创建option
- ① var obj=document.getElementById('citySel'); //根据id查找对象
- ② obj.add(new Option("文本","值")); //添加一个选项
- //根据id查找对象
- ② obj.add(new Option("文本","值")); //添加一个选项
3. 删除option
(1)删除所有option
- ① var obj=document.getElementById('citySel'); //获取select对象
- ② obj.options.length=0; //设置option的length为0
- //获取select对象
- ② obj.options.length=0; //设置option的length为0
(2)删除某一个option
- ① var obj=document.getElementById('citySel'); //获取select对象
- //获取select对象
- ② var i=obj.selectedIndex; //i为要删除选项的下标(取当前选中选项的下标)
obj.options.remove(i); //调用remove方法
4. 如何获取或者设置到相对应的值呢?
- <select id="citySel" onchange="selChange()" class="select">
- <option value="">请选择城市</option>
- <option value="sh">上海</option>
- <option value="bj">北京</option>
- <option value="gz">广州</option>
- <option value="sz">深圳</option>
- </select>
方法一:javascript
- 1:获取select对象:
- var myselect=document.getElementById("citySel");
- 2:取到选中项的索引:
- var index = myselect.selectedIndex;// selectedIndex是所选中的项的index
- 3:获取选中项的value:
- myselect.options[index].value;
- 4:取到选中项的文本内容:
- myselect.options[index].text;
- // selectedIndex是所选中的项的index
- 5:获取选中项的value:
- myselect.options[index].value;
- 6:取到选中项的文本内容:
- myselect.options[index].text;
方法二:jquery
- 1:var options=$("#citySel option:selected"); //获取选中的option
- 2:options.val(); //拿到选中项的值,比如选中上海,获取的值为“sh”;
- 3:options.text(); //拿到选中项的文本,比如选中上海,获取的值为“上海”
- //获取选中的option
- 2:options.val(); //拿到选中项的值,比如选中上海,获取的值为“sh”;
- 3:options.text(); //拿到选中项的文本,比如选中上海,获取的值为“上海”