Select options 集合

定义和用法
option 集合可返回包含 <select> 元素中所有 <option> 的一个数组。
注意: 数组中的每个元素对应一个 <option> 标签 - 由 0 起始。
语法
selectObject.options
属性
属性 | 描述 |
---|---|
length | 返回集合的option元素数目 |
selectedIndex | 设置或者返回select对象已选选项的索引值。(以 0 起始) |
方法
方法 | 描述 |
---|---|
[index] | 以数字形式指定元素索引 (以 0 开始) |
[add(element[,index])] | 在集合中添加option元素 |
item(index) | 以数字索引返回集合中元素 |
namedItem(name) | 以名称为索引返回集合元素 |
remove(index) | 从集合中移除元素 |
浏览器支持
所有主要浏览器都支持 options 集合
实例
循环输出下拉列表中的所有选项:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>蜜蜂教程(mifengjc.com)</title>
<script>
function displayResult() {
var x = document.getElementById("mySelect");
var txt = "All options: ";
var i;
for (i = 0; i < x.length; i++) {
txt = txt + "
" + x.options[i].text;
}
alert(txt);
}
</script>
</head>
<body>
<form>
你最喜欢的水果:
<select id="mySelect">
<option>Apple</option>
<option>Orange</option>
<option>Pineapple</option>
<option>Banana</option>
</select>
</form>
<button type="button" onclick="displayResult()">显示所有选项的文本</button>
</body>
</html>
更多实例
通过另外一个下拉菜单已选选项来修改当前下拉菜单的选项。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>蜜蜂教程(mifengjc.com)</title>
<script>
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) {
for (var i = 0; i < cars.length; i++) {
var car = new Option(cars[i], i);
modelList.options.add(car);
}
}
}
</script>
</head>
<body onload="ChangeCarList();">
<select id="car" onchange="ChangeCarList();">
<option value="">-- Car --</option>
<option value="VO">Volvo</option>
<option value="VW">Volkswagen</option>
<option value="BMW">BMW</option>
</select>
<select id="carmodel"></select>
</body>
</html>
