2014-03-05 41 views
2

我想找回所有的選擇選擇多選擇當我提交我的表單。得到所有選擇的多選沒有jQuery

像:

<select id="multipleSelect" multiple="multiple"> 
<option value="1">Text 1</option> 
<option value="2">Text 2</option> 
<option value="3">Text 3</option> 

使用財產以後那樣:

var selectedValues = document.getElementbyId('multipleSelect).values; 

,並獲得與所選擇像所有值的數組[ '2', '3']

所有這一切,沒有jQuery和在JS或PHP是好的:)

thx!

+0

lulz,我知道:) 我想'的document.getElementById('multipleSelect).value',但我只得到1個選項(即使當我選擇更多)... 我試着用'foreach($ _GET ['selectid']作爲$ selectedOption)' 但沒有工作... 我只是尋找類似'.val()'在jquery中,但只有js ... – Crocsx

+0

@Crocsx服務器端'=/='客戶端 – VisioN

+0

失蹤關閉''',這裏是'value' getElementbyId('multipleSelect).values;' – Praveen

回答

2
var options = document.getElementById('multipleSelect').options, 
    result = []; 

for (var i = 0, len = options.length; i < len; i++) { 
    var opt = options[i]; 

    if (opt.selected) { 
     result.push(opt.value); 
    } 
} 

console.log(result); 

DEMO:http://jsfiddle.net/AH2yK/

+0

thx :)我也檢查,看起來不錯 – Crocsx

+0

@Crocsx不客氣! ')' – VisioN

0

你可以嘗試這樣的,

var options = document.getElementById('multipleSelect').options; 
var values = []; 
var i = 0, len = options.length; 

while (i < len) 
{ 
    if(options[i].selected){ 
    values.push(options[i].value);   
    } 
    i++; 
} 
alert(values.join(', ')); 
+0

thx,我會看看這個:) – Crocsx