el-select 下拉框有两个选项,1和2,当选择其中一个 的时候弹确认框,确认之后值改变,取消则还为 御哪来的值 怎么写
时间: 2024-09-11 13:12:27 浏览: 70
在使用 `el-select` 下拉框组件时,可以通过 `v-model` 进行双向数据绑定,然后利用事件监听来实现确认框弹出的逻辑。以下是一个基于Vue.js和Element UI的示例代码,展示了如何实现当用户选择一个选项后弹出确认框,并在确认后改变下拉框的值,如果用户取消,则保持原值不变。
```html
<template>
<div>
<!-- el-select组件 -->
<el-select v-model="selectedValue" @change="handleChange">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
<!-- 显示当前选中的值 -->
<div>当前选择:{{ selectedValue }}</div>
</div>
</template>
<script>
export default {
data() {
return {
selectedValue: '', // 绑定的值
options: [ // 下拉列表选项
{ value: '1', label: '选项1' },
{ value: '2', label: '选项2' }
]
};
},
methods: {
handleChange(value) {
// 确认框逻辑
this.$confirm('确定要选择这个选项吗?', '提示', {
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
// 用户点击确认
console.log('选择的值是:', value);
// 这里可以根据需求进行其他操作
}).catch(() => {
// 用户点击取消或者关闭
// 可以在这里处理用户取消后的逻辑,比如还原值
this.selectedValue = value; // 如果需要还原,则在这里设置
console.log('用户取消选择,值未改变。');
});
}
}
};
</script>
```
这段代码中,`el-select` 组件绑定了 `selectedValue` 属性作为选中的值,并监听了 `change` 事件。当用户改变选择时,`handleChange` 方法会被触发。在这个方法中,使用了 Element UI 的 `$confirm` 方法弹出确认框。如果用户点击确认,则继续执行确认后的逻辑,否则执行catch块中的逻辑。
阅读全文