el-cascader 多选下 单击label选中

不知道为什么。。。 单选是点文字可以的,但是多选情况下必须要选中方块才可以,非常蛋疼

也许可以去给提个pr?
Element - The world's most popular Vue UI framework

处理方式: 参element Cascader 多选 点击文字选中 - 码农教程 

直接

1 .el-cascader-panel .el-checkbox {
 2   width: 100%;
 3   height: 100%;
 4   z-index: 10;
 5   position: absolute;
 6 }
 7 .el-cascader-node__label{
 8   margin-left: 10px;
 9 }
10 /* 这个样式针对IE有用,不考虑IE的可以不用管*/
11 .el-cascader-panel .el-cascader-node__postfix {
12   top: 10px;
13 }

但是又有个问题,我是两个级联,这样单击左边的时候,右边变成全部选中了,但是需求是只要展开就可以了,不用选中

那么用nth-child(选中的是兄弟节点)

只给第二级也就是even加这个效果

就可以做到点文字的时候选中了

<style lang="less">
// &:nth-child(even)
.el-cascader-menu:nth-child(even) {
   .el-checkbox {
      width: 100%;
      height: 100%;
      z-index: 10;
      position: absolute;
   }
 }
 .el-cascader-node__label{
  margin-left: 10px;
 }
 /* 这个样式针对IE有用,不考虑IE的可以不用管*/
 .el-cascader-panel .el-cascader-node__postfix {
  top: 10px;
}
</style>

此外还有一个获取点击的label

原生是获取不了label的

要先加一个ref

 const checkedNodes = this.$refs['cascaderAddr'].getCheckedNodes(true) // 获取当前点击的节点

true就是只获得叶子节点

 <el-cascader-panel
              style="width:700px;"
              v-model="cascaderValue"
              :options="cascaderOptions"
              :props="cascaderProps"
               ref="cascaderAddr"
              @change='handleCascaderChange'
              @remove-tag='handleCascaderRemove'
              filterable
              clearable
              :show-all-levels="false"
              >

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值