将下拉列表中的多选值添加到数组

时间:2018-12-04 17:31:30

标签: javascript html

我试图从多选下拉列表中获取选定的值,并将选定的值添加到数组中。

我目前的使用方式,它会在下拉列表中添加所有值,而不是所选值。

这是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);
}

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

1 个答案:

答案 0 :(得分:2)

我能够在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);
}