假设我有这个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);
});


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

最佳答案

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

注意:您必须删除内联事件onchange,因为您已经将change事件附加到了JS代码中。



$("#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>

关于jquery - 如何在多选中获得所有选定的值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52652941/

10-10 20:35