扩展element cascader选择任意一级节点的文字部分选中节点(一行代码)和选中后自动关闭面板

element cascader配置props.checkStrictly = true就可以使用选择任意一级选项

不过有的需求是直接点击文字部分就控制radio 选中整个节点,为此可以通过原生元素操作实现

点击任意节点文本选中节点

 需在自定义节点中加入一行代码实现

<div @click="$event.srcElement.parentNode.previousElementSibling.click()">
{{ data.name }}</div>
<el-cascader
    v-model="selectedNode"
    ref="cascader"
    placeholder="请选择任意节点"
    :options="treeData"
    :props="defaultPropsCatlog"
    :show-all-levels="false"
    @change="$refs.cascader.dropDownVisible=false"
    filterable
>
  <template slot-scope="{ node, data }">
      <!--点击文本后选中整个节点-->
    <div @click="$event.srcElement.parentNode.previousElementSibling.click()">
{{ data.name }}</div>
  </template>
</el-cascader>

 扩展功能选择后自动关闭

如果要在节点选中后自动关闭,在change事件加入代码:

@change="$refs.cascader.dropDownVisible=false"

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值