数据可以回显,但是数据不显示在输入框当中,只是在下拉框当中打勾
时间: 2024-03-07 10:48:02 浏览: 80
这种情况下,你需要设置 el-select 组件的 collapse-tags 属性为 false,这样选中的标签就会显示在输入框中。
```
<el-select multiple v-model="selectedItems" collapse-tags=false>
<el-option v-for="(item, index) in options" :key="index" :label="item.label" :value="item.value"></el-option>
</el-select>
```
如果设置了 collapse-tags 属性为 false 之后还是无法显示选中的标签,那么你需要检查选中标签的样式是否被覆盖了,可以通过浏览器的开发者工具来查看选中标签的样式是否存在或者是否被其他样式覆盖。
相关问题
el-select 多选框回显时有数据,但是数据没有显示在输入框当中
可能是你的 el-select 组件的 multiple 属性没有设置为 true。请确保你的 el-select 组件的代码类似于以下代码:
```
<el-select multiple v-model="selectedItems">
<el-option v-for="(item, index) in options" :key="index" :label="item.label" :value="item.value"></el-option>
</el-select>
```
其中,multiple 属性设置为 true,selectedItems 是用来绑定选中项的数组,在选中项改变时可以在该数组中获取选中的值。
如果你的代码已经设置了 multiple 属性为 true,但是依然无法回显数据,那可能是你的数据格式不正确或者数据绑定有误。请检查你的数据格式,确保数据格式正确并且数据绑定正确。
vue下拉框回显数据,但是用push添加不回显
在Vue中,使用`v-model`指令可以实现表单元素的双向绑定。下拉框也是一种表单元素,因此也可以使用`v-model`来实现回显数据的功能。
如果你的下拉框选项是通过一个数组动态生成的,那么你可以在`data`选项中定义一个数组来存储选项,然后在`mounted`钩子函数中初始化这个数组。例如:
```html
<template>
<div>
<select v-model="selectedOption">
<option v-for="option in options" :value="option.value">{{ option.label }}</option>
</select>
</div>
</template>
<script>
export default {
data() {
return {
selectedOption: '',
options: []
}
},
mounted() {
// 初始化选项数组
this.options.push({ label: '选项1', value: '1' })
this.options.push({ label: '选项2', value: '2' })
this.options.push({ label: '选项3', value: '3' })
// 设置默认选中的选项
this.selectedOption = '2'
}
}
</script>
```
在上面的代码中,我们定义了一个`selectedOption`变量来存储当前选中的选项的值,以及一个`options`数组来存储下拉框的选项。在`mounted`钩子函数中,我们使用`push`方法向`options`数组中添加三个选项,并且将默认选中的选项设置为`2`。
如果你使用`push`方法向`options`数组中添加选项后,发现下拉框没有回显数据,那么可能是因为Vue无法检测到`options`数组的变化。这时,你可以使用Vue提供的`$set`方法来添加选项。例如:
```javascript
this.$set(this.options, 0, { label: '选项1', value: '1' })
```
在上面的代码中,我们使用`$set`方法将一个新的选项添加到`options`数组的第一个位置。这样,Vue就能够检测到`options`数组的变化,并且能够正确地回显数据。
阅读全文