获取具有多个选项的下拉列表的所有值

时间:2014-07-30 06:30:27

标签: jquery

我想获得带有多个选项的下拉列表的值。我想使用jquery获取选择而不是选择下拉列表的值.Anybody帮助我?

我的代码如下:

 <select name="select" multiple id="select">
   <option value="aa">aa</option>
   <option value="bb">bb</option>
 </select>
<BR><BR>
<input type="button" value="Print All" onClick="printAll()">
<script>

 function printAll()
  {
    var selectedValues = $("#select").val();
    alert(selectedValues);
  }

</script>

4 个答案:

答案 0 :(得分:0)

要全部未选中:

$('#select option:not(:selected)').map(function() { return $(this).val(); });

并获得选择:

$('#select option:selected').map(function() { return $(this).val(); });;

答案 1 :(得分:0)

我认为你需要这个。检查这个DEMO

HTML:

   <select name="select" multiple id="select" >
   <option value="aa">aa</option>
   <option value="bb">bb</option>
    <option value="cc">bb</option>
    <option value="dd">bb</option>
 </select>
<input id="printAll"type="button" value="Print All">

jQuery:

 $("#printAll").click(function(){

$('#select option').not(":selected").each(function(){
    alert("unselected :"+$(this).val());
});
});

答案 2 :(得分:0)

获取所有值(选中和未选中):

$('#printAll').on('click', function (e) {
    e.preventDefault();
    var allValues = $('select[multiple] option').map(function () {
        return this.value;
    }).get();
    console.log(allValues); // ['aa','bb']
});

JS Fiddle demo

参考文献:

答案 3 :(得分:0)

你问过: "I want to get selected and not selected value "

一种很好的方法: jsBin demo

var arr = [[],[]];
$('#select option').val(function(i,v){
    arr[+this.selected].push(v);
});
alert( "Unselected: "+ arr[0] +"\n Selected: "+ arr[1] );