2015-02-10 42 views
6

对于使用jQuery here从下拉列表中获取选定值的问题,已经存在很多问题。获取列表框中选定值的列表

这个答案几乎适用于列表框,但是如果选择了多个值,则结果是一个单个字符串,并且所有值都连接在一起。这没有用。我需要每个选定选项的文本值的集合(列表,数组,任何)。

目前我想我会用另一个问题的答案,但最后没有.text(),然后迭代通过匹配。更好的想法?

回答

10

通过迭代循环,您可以选取多个选定的文本,如下所述。

$('#f1').click(function(){  
    var rr = []; 
    $('.selectpicker :selected').each(function(i, selected){ 
     rr[i] = $(selected).text(); 
    }); 
    alert(rr); 
}); 

或者如果你想使用它的然后简单地写。

$('.selectpicker').val(); 

Demo

+0

是的,它会从你的下拉列表中所有选中的选项。 – Sadikhasan 2015-02-10 04:30:35

+0

只需使用.val就能得到我想要的东西,因为在这种情况下,每个选项的文本和值都是相同的 – DCShannon 2015-02-10 04:38:29

+0

有时.val()返回字符串数组,这是我想要的,其他时间返回一个DispHTMLOptionElement数组。似乎是随机的。 – DCShannon 2015-02-10 04:50:53

1

您可以如下使用:

var selectedVal= []; 
$('#multiple :selected').each(function(i, selected){ 
    selectedVal[i] = $(selected).text(); 
    alert(selectedVal[i]); 
}); 

Here is Tutorial and example

+1

upvote为教程,但解决方案的其余部分是相同的已发布 – DCShannon 2015-02-10 04:36:46

+0

亚..我认为这是得到选定的价值的方式。希望你有解决办法。 – 2015-02-10 04:39:09