Select options 集合

定義和用法

options 集合返回下拉列表中所有 <option> 元素 的集合。

注釋:集合中的元素按照它們在源代碼中出現的順序排序。

實例

例子 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