獲取對錶單的引用:
var form = document.getElementById('teamSelect');
或
var form = document.forms['teamSelect']
,或者如果形式給出的名稱相同的ID:
var elements = form.elements;
for (var i=0, iLen=elements.length; i<iLen; i++) {
// elements[i] is a form control, get its value and
// do whatever
}
注:
var form = document.teamSelect;
然後在它的元素集合進行迭代對於選定元素,該值是當前選定選項的值。
雖然一個選項是應該始終要選擇(即應該有選擇的屬性,以便它是默認選中的選項),在省略和選擇可以沒有選擇的選項很多情況下。在這種情況下,其selectedIndex屬性將爲-1。
另請注意,所選選項的值應該是值屬性的值,如果缺失,則爲text屬性的值(選項的文本)。然而,IE得到這個錯誤,如果沒有值屬性,返回一個空字符串。因此,要獲得選擇的值,您需要執行以下操作:
function getSelectValue(select) {
var idx = select.selectedIndex;
// If one has been selected, return its value or text
if (idx >=0) {
return select.options[idx].value || select.options[idx].text
// Otherwise none are selected - return empty string?
} else {
return '';
}
}
元素已經有一個名稱,所以它可以被引用爲:'document.forms ['teamSelect']。team'。 – RobG
@RobG:true,但我討厭DOM級別0,所以我選擇了DOM級別1解決方案。 – Domenic