2014-03-05 40 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