Vue使用Element的级联选择器Cascader,选中后下拉框自动关闭

在级联选择器@change方法中,监听变化,首先添加一个ref=“cascaderHandle”,在@change绑定的方法中监听:this.$refs.cascaderHandle.dropDownVisible = false;

<el-cascader
       ref="cascaderHandle"
       @change="orgChange"
       v-model="form.groupID"
       :options="devGroupList"
       :props="{
            value: 'id',
            label: 'name',
            emitPath: false,
            checkStrictly: true,
         }"
       :show-all-levels="false"
</el-cascader>
:props="{
       value:定选项的值为选项对象的某个属性值,
       label: 指定选项标签为选项对象的某个属性值,
       emitPath: 在选中节点改变时,是否返回由该节点所在的各级菜单的值所组成的数组,若设置 false,则只返回该节点的值,
       checkStrictly: 是否严格的遵守父子节点不互相关联,
}"
show-all-levels:输入框中是否显示选中值的完整路径
orgChange(row) {
      this.$refs.cascaderHandle.dropDownVisible = false; //监听值发生变化就关闭它
    },
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个基于VueElement UI的级联下拉框示例代码,用于选择省份、城市和区县: ``` <template> <div> <el-cascader :options="options" :props="props" v-model="selectedOptions" @change="handleChange" placeholder="请选择地址" clearable ></el-cascader> </div> </template> <script> import axios from 'axios'; export default { data() { return { options: [], // 用于存储省市区数据的数组 selectedOptions: [], // 用于存储当前选择的省市区数据的数组 props: { value: 'name', // 显示的文本 label: 'name', // 返回的值 children: 'children', // 子节点 isLeaf: 'isLeaf' // 是否为叶子节点 } }; }, mounted() { // 获取省份数据 this.loadData(0, data => { this.options = data; }); }, methods: { // 加载数据 loadData(id, callback) { axios.get('/api/address/' + id).then(res => { const data = res.data; if (data.status === 0) { callback(data.data); } else { this.$message.error(data.message); } }).catch(error => { this.$message.error(error.message); }); }, // 选择器值改变时的回调 handleChange(value, selectedOptions) { // 如果最后一个选项不是叶子节点,则加载它的子节点 const lastOption = selectedOptions[selectedOptions.length - 1]; if (!lastOption.isLeaf) { this.loadData(lastOption.id, data => { // 动态添加子节点 this.$set(lastOption, 'children', data); }); } } } }; </script> ``` 在该示例中,`options`数组用于存储省市区数据,`selectedOptions`数组用于存储当前选择的省市区数据。`props`对象用于设置`el-cascader`组件的属性,包括显示的文本、返回的值、子节点和是否为叶子节点。`mounted`生命周期钩子函数中,我们调用`loadData`方法获取省份数据。`loadData`方法接收一个`id`参数,用于指定父节点的ID,以此加载子节点数据。`handleChange`方法用于处理选择器值改变时的回调,如果最后一个选项不是叶子节点,则加载它的子节点。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值