javascript - 将下拉列表中的多选值添加到数组
问题描述
我正在尝试从多选下拉菜单中获取选定的值,并将选定的值添加到数组中。
我目前拥有它的方式,它添加了下拉列表中的所有值,而不是选定的值。
这是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);
}
关于如何获取所选值的任何提示?谢谢你。
解决方案
我能够在我的 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);
}
推荐阅读
- bash - 如果输出不匹配,如何使期望的期望命令失败?
- java - Ignite 性能:如何调整 ignite 瘦客户端的缓存写入性能?
- swift - 如何像用户在可可应用程序中使用终端一样运行脚本?
- python - 使用 psycopg2 缓存中间表
- docker - Docker Machine:删除 STATE = Error 或 ERRORS 不是 None 或 DOCKER = Unknown 的机器
- android - Android Studio 在 onClick 时出现错误
- python - 每个值的坐标不是每次都添加,而是重置
- bash - 在 zsh 脚本中获取上一个命令的参数
- .net-core - 无法将 API 控制器添加到 .NET Core 3 API 项目
- uml - 如何指定一个类的唯一标识符