首页 > 解决方案 > 将下拉列表中的多选值添加到数组

问题描述

我正在尝试从多选下拉菜单中获取选定的值,并将选定的值添加到数组中。

我目前拥有它的方式,它添加了下拉列表中的所有值,而不是选定的值。

这是HTML:

<div class="form-group">
    <select multiple class="form-control" id="servicePackageTypeText">
        <option disabled selected value> -- select an option -- </option>
        <option><?php echo $servicehtml ?></option>
    </select>
</div>

这是JavaScript:

var sourcetype = document.getElementById("servicePackageTypeText"); 
var servicearray = new Array();

for (i = 0; i < sourcetype.length; i++) 
{ 
    servicearray.push(sourcetype.options[i].value);
}

关于如何获取所选值的任何提示?谢谢你。

标签: javascripthtml

解决方案


我能够在我的 for 循环中使用“selectOptions”来解决这个问题:

var sourcetype = document.getElementById("servicePackageTypeText"); 
var servicearray = new Array();
for (i = 0; i < sourcetype.selectedOptions.length; i++) 
{ 
    servicearray.push(sourcetype.selectedOptions[i].value);
}

推荐阅读