2012-01-17 157 views
0

任何大師能告訴我如何從HTML表單元素 - RADIO BUTTON和CHECK BOX獲取值嗎?通過Javascript訪問HTML表單元素

例如,在文本框的情況下,我們可以直接通過getElementById(id).value獲取值;

但如何獲得組合框(下拉菜單),單選按鈕和複選框的值?

謝謝。

+0

邊注:幾乎沒有人做這種方式了,而是大多數人使用像jQuery,MooTools的,等框架,這樣我們就可以只需要執行'$('#yourSelectId').val()'或'$('#yourSelectId選項:選中').val()'(jquery的例子)。 – gregmac 2012-01-17 05:42:07

+0

你可以做一些Google搜索,你會發現1000個例子。付出一點努力。 – 2012-01-17 05:50:25

回答

2

下拉顯示(<select>):

var el = document.getElementById('yourSelectId'); 
var value = el.options[el.selectedIndex].value; 

如果你對待你的選擇列表中的多選(組合框)中,則必須通過選項循環,如果他們選擇的檢查:

var el = document.getElementByid('yourSelectId'); 
var selectedValues = []; 

for (var i = 0; i < el.options.length; i++) { 
    if (el.options[i].selected) { 
     selectedValues.push(el.options[i].value); 
    } 
} 

// all selected values are now in the selectedValues array. 

單選按鈕和複選框也應該有value特性,但更恰當,我想我只測試它們是否被檢查:

var isChecked = document.getElementById('yourRadioOrCheckboxId').checked; 
+0

和收音機和複選框? – Acn 2012-01-17 05:32:52

+0

在答案 – 2012-01-17 05:34:05

+0

@BigFatPig:對不起,緩慢的更新。 – 2012-01-17 05:35:27

1

對於複選框,該元素有一個.checked屬性:

document.getElementById('foo').checked; // true or false