javascript - 下拉选项在 vuejs 中没有正确选择
问题描述
我有一个下拉列表,其中根据 API 响应填充选项。响应如下所示
{"value":"1371","label":"apple"},{"value":"1371","label":"banana"},{"value":"1371","label":"mango "},{"value":"1365","label":"airconditioner"},{"value":"1365","label":"refridgerator"},{"value":"1365","label":"mobile"}
由于不同标签的响应具有相同的值,因此在选择选项时会出现故障。当我选择“芒果”时,它会自动选择具有相同值的第一个字段。vuejs中是否有任何解决方案来解决这个问题。
<select v-model="selected" class="selected-lists" size="8">
<option v-for="facility in availableList" v-bind:value="facility.value">{{facility.label }}</option>
</select>
解决方案
由于您的一些项目具有相同的值,因此将选择列表中的第一个项目。
您可以做的是将整个对象设置为值::value="facility"
然后,如果您只需要所选项目的值,请从selected
属性中获取它,即您的模型:在模板中:{{ selected.value }}
在脚本中:this.selected.value
推荐阅读
- python - 如何在Python中从最后一个数字到第一个数字进行索引
- javascript - 如何将文本/按钮添加到一个可折叠列表的所有标题/正文?
- cypress - Cypress 测试在 Github Actions 中部署 Vercel 之前运行
- python - 在 Python 中比较 DataFrame 和合并列之间的值
- stm32 - STM32F1 基尔 HAL
- sql - 在 SQL 中连接时删除的数字的零前导数字
- azureservicebus - 如何使用 MassTransit 从 Azure 死信队列中读取消息
- android-studio - Kotlin 编译错误:使用不兼容的 Kotlin 版本编译模块
- docker - 如何在同一台计算机上运行多个 localhost?
- python - 我需要将列表列表转换为要在 python 中的电子邮件中发送的表格