el-select多选同时获得id和name、回显
在使用el-select
进行多选时,若需要同时获取id和name,并且需要实现回显,可以使用v-model
进行数据双向绑定,并且在el-option
中绑定对象。
以下是一个简单的例子:
<template>
<el-select v-model="selectedOptions" multiple placeholder="请选择">
<el-option
v-for="item in options"
:key="item.id"
:label="item.name"
:value="item">
</el-option>
</el-select>
</template>
<script>
export default {
data() {
return {
selectedOptions: [], // 用于v-model的数组,存储选中的对象
options: [ // 下拉选项的数组
{ id: 1, name: '选项1' },
{ id: 2, name: '选项2' },
{ id: 3, name: '选项3' },
// ...更多选项
]
};
},
watch: {
selectedOptions(newValue) {
// 当选中项变化时,可以进行相关操作,例如回显
console.log(newValue.map(item => item.id)); // 输出选中项的id数组
}
}
};
</script>
在这个例子中,selectedOptions
是一个数组,用于存储选中的对象。每个对象都包含id
和name
属性。在el-option
中,:value="item"
将整个对象作为选中项的值。
当选中项变化时,可以通过watch
来监听selectedOptions
的变化,并进行相关操作,例如回显。在watch
中,你可以访问选中项的id数组,并根据需要进行处理。
评论已关闭