如何在多选中获得所有选定的值?

时间:2018-10-04 18:06:30

标签: jquery

假设我有这个select

<select id="ddrp1" multiple onchange="SelectChanged(this)">
    <option value="">Select an option</option>
    <option value="Option 1">Option 1</option>
    <option value="Option 2">Option 2</option>
    <option value="Option 3">Option 3</option>
    <option value="Option 4">Option 4</option>
    <option value="Option 5">Option 5</option>
</select>

我想显示所有选定的值,因为此select允许选择多个元素,所以我这样做了:

$("#ddrp1").on("change", function() {
   alert(this.value); 
});

但这只会显示选择的第一个值。

1 个答案:

答案 0 :(得分:1)

由于您使用的是jQuery,因此可以简单地使用.val()方法来返回所有选定的值。

注意:,因为您已经在JavaScript代码中附加了onchange事件,所以必须删除内联事件change

$("#ddrp1").on("change", function() {
  console.log($(this).val());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="ddrp1" multiple>
  <option value="">Select an option</option>
  <option value="Option 1">Option 1</option>
  <option value="Option 2">Option 2</option>
  <option value="Option 3">Option 3</option>
  <option value="Option 4">Option 4</option>
  <option value="Option 5">Option 5</option>
</select>