Cascader 级联选择器:获取选中后输入框中的值

element Plus为我们提供了一个很好的级联选择工具Cascader,可以实现级联选择效果。但有时候,我们不仅要知道被选中的key数组,还想获取到选中后显示在输入框中的值。

 此时就需要用到Cascader引用对象的_rawValue属性。来看一下它到底提供了什么信息:

 可以清楚的看到,通过_rawValue属性的getCheckedNodes()方法,得到了一个node节点信息,除了包含Text属性外,还包含了各层级对象信息。也就是说,我们不仅可以通过depRef._rawValue.getCheckedNodes()[0]获取Cascader输入框中的文本信息,还可以通过它获取到被选中项的各层级节点对象,以及各层级id数组集合pathValues。这样一来,就可以知道被选中项的完成的层级信息,包括各层级对象的命名和id。在类似填充个人组织部门信息时,是非常有用的一个操作。

另外多说一点,当我们利用Cascader进行级联选择时,就像我这里呈现的可选择任意一级选项的效果,也就是将checkStrictly属性置为true,当已经选中后,应立即关闭下拉框。但Cascader组件默认是不会提供这样的效果的,需要我们手动去关闭下拉框。其实也很简单,只需要在change监听实践中,增加关闭逻辑即可,如下所示:

depRef.value.togglePopperVisible();

depRef是Cascader的引用对象,使用的是element plus框架

 需要注意的是,上面的写法是Vue3的写法,Vue2的表达式如下所示:

this.$refs.depRef.togglePopperVisible()

如果你使用的是element ui,需要用下面的代码关闭下拉框:

this.$refs.depRef.dropDownVisible = false

另外,可以根据引用对象的popperVisible属性判断,当前下拉框是否处于显示状态,如果是,就关闭下拉框:

if (!depRef.value.popperVisible) {
  depRef.value.togglePopperVisible() 
}

以上就是Cascader 级联选择器的一些操作小技巧,希望对大家有所帮助。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值