Select options 集合
实例
例子 1
查看特定下拉列表中有多少个选项:
var x = document.getElementById("mySelect").options.length;
x 的结果将是:
4
提示:页面下方提供更多实例。
语法
selectObject.options
属性
| 属性 | 描述 |
|---|---|
| length |
返回集合中 <option> 元素的数量。 注释:此属性是只读的 |
| selectedIndex | 设置或返回集合中所选 <option> 元素的索引(从 0 开始)。 |
方法
| 方法 | 描述 |
|---|---|
| [index] |
从集合中返回有指定索引(从 0 开始)的 <option> 元素。 注释:如果索引号超出范围,则返回 null。 |
| [add(option[,index])] | 将 <option> 元素添加到集合中的指定索引处。如果未指定索引,它会在集合的末尾插入该选项。 |
| item(index) |
从集合中返回有指定索引(从 0 开始)的 <option> 元素。 注释:如果索引号超出范围,则返回 null。 |
| namedItem(id) |
从集合中返回有指定 ID 的 <option> 元素。 注释:如果 id 不存在则返回 null。 |
| remove(index) | 从集合中移除有指定索引的 <option> 元素。 |
技术细节
| DOM 版本: | Core Level 2 Document Object |
|---|---|
| 返回值: |
HTMLOptionsCollection 对象,表示 <select> 元素中的所有 <option> 元素。 集合中的元素按它们在源代码中出现的顺序排序。 |
更多实例
例子 2:[index]
获取下拉列表中第一个选项(索引 0)的文本:
var x = document.getElementById("mySelect").options[0].text;
x 的结果将是:
Apple
例子 3:item(index)
获取下拉列表中第一个选项(索引 0)的文本:
var x = document.getElementById("mySelect").options.item(0).text;
x 的结果将是:
Apple
例子 4:namedItem(id)
获取下拉列表中 id="orange" 的选项的文本:
var x = document.getElementById("mySelect").options.namedItem("orange").text;
x 的结果将是:
Orange
例子 5
在下拉列表的索引位置 “1” 处添加 “Kiwi” 选项:
var x = document.getElementById("mySelect");
var c = document.createElement("option");
c.text = "Kiwi";
x.options.add(c, 1);
例子 6
从下拉列表中删除索引为 “1” 的选项:
var x = document.getElementById("mySelect"); x.options.remove(1);例子 7
循环遍历下拉列表中的所有选项,并输出每个选项的文本:
var x = document.getElementById("mySelect");
var txt = "";
var i;
for (i = 0; i < x.length; i++) {
txt = txt + x.options[i].text + "<br>";
}
x 的结果将是:
Apple Orange Pineapple Banana
例子 8
在下拉列表中选择一个选项,并在 id="demo" 的元素中输出所选选项的文本:
var x = document.getElementById("mySelect");
var i = x.selectedIndex;
document.getElementById("demo").innerHTML = x.options[i].text;
x 的结果将是:
Banana
例子 9
根据另一个下拉列表中的选定选项更改下拉列表中的选项:
var carsAndModels = {};
carsAndModels['VO'] = ['V70', 'XC60', 'XC90'];
carsAndModels['VW'] = ['Golf', 'Polo', 'Scirocco', 'Touareg'];
carsAndModels['BMW'] = ['M6', 'X5', 'Z3'];
function ChangeCarList() {
var carList = document.getElementById("car");
var modelList = document.getElementById("carmodel");
var selCar = carList.options[carList.selectedIndex].value;
while (modelList.options.length) {
modelList.remove(0);
}
var cars = carsAndModels[selCar];
if (cars) {
var i;
for (i = 0; i < cars.length; i++) {
var car = new Option(cars[i], i);
modelList.options.add(car);
}
}
}
Browser Support
Collection
options
Yes Yes Yes Yes Yes