element-ui Cascader 级联选择器 点击label选中

20 篇文章 0 订阅
14 篇文章 0 订阅
文章提供了两种方法来解决在Cascader级联选择器中,只有点击radio才能选中数据的问题。方法一是通过定时器设置点击label时触发radio的点击事件,但这种方法不推荐因消耗性能。方法二是通过修改CSS样式,使radio全屏并隐藏,使得点击label等效于点击radio。
摘要由CSDN通过智能技术生成

官网中我们可以看到Cascader 级联选择器,选择任意一级选项时,只有选中radio时才能选中数据,点击label不能选中数据
在这里插入图片描述
解决方法:
方法一:定时器 不推荐 消耗性能

mounted () {
  // 点击文字的时候也自动选择radio标签 不推荐此用法
  setInterval(function () {
    document.querySelectorAll('.el-cascader-node__label').forEach(el => {
      el.onclick = function () {
        if (this.previousElementSibling) this.previousElementSibling.click()
      }
    })
  }, 1000)
}

方法二:修改样式
注意:el-cascader-panel 是直接挂载在body上的,所以需要全局设置

.el-cascader-panel .el-radio{ 
    width: 100%; 
    height: 100%;
    z-index: 10; 
    position: absolute; 
    top: 10px; 
    right: -10px; 
} 
.el-cascader-panel .el-radio__input{
   visibility: hidden;  //隐藏单选框,不隐藏就不用设置
} 
.el-cascader-panel .el-cascader-node__postfix{ 
  top: 10px; 
}

el-cascader 多选下 单击label选中:我还没试,但我百度了一下…地址:https://blog.csdn.net/StrongerIrene/article/details/125106754

参考地址:https://www.cnblogs.com/WorldEye/p/14006517.html

在使用element-ui级联选择器Cascader)时,获取选中项的label值通常是在选择器的事件回调函数中实现的。级联选择器组件提供了`change`事件,当选项发生变化时,会触发此事件,并传递当前选中项的值。通过事件回调函数中的参数,可以获取到选中的数据项,其中包括了label值。 以下是一个示例代码,演示如何获取选中label值: ```javascript <template> <el-cascader :options="cascaderOptions" v-model="value" @change="handleChange"> </el-cascader> </template> <script> export default { data() { return { value: [], // 用于双向绑定选中的值 cascaderOptions: [ // 这里是级联选择器的选项数据 ] }; }, methods: { handleChange(value, selectedOptions) { // value是选中项的值组成的数组 // selectedOptions是选中项的数据组成的数组 const label = selectedOptions.map(item => item.label).join(' / '); // 将label值用' / '连接成字符串 console.log(label); // 打印选中label值 } } }; </script> ``` 在这个例子中,`handleChange`方法会在用户选择不同的级联选项时被调用。`selectedOptions`参数是一个数组,包含了用户选中的所有级联选项的数据。通过映射(`map`)这个数组并获取每个对象的`label`属性,然后将这些label值用' / '连接起来,就得到了一个完整的选中label路径字符串。最后,这个字符串被打印出来或者可以根据需要进行其他操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值