Element UI Tree 樹形控件(可選擇),如果子級有值,父級禁用的兩種操作


總結了兩種方法:

一、父級的復選框禁用

 

<el-tree
    :data="deptOptions"
    node-key="id"
    :props="defaultProps"
    :expand-on-click-node="true"
    :filter-node-method="filterNode"
    :check-strictly="true"
    show-checkbox
    ref="tree"
    @check="handleNodeClick"
/>

<script>
    export default{
        data:{
            defaultProps:{
                children:'children',
                label:'name',
                disabled:function(data,node){
                        if(data.children&&data.children.length>0){
                            return true            
                        }else{
                            return false            
                        }
                }    
            }
        },
        methods:{
            handleNodeClick(data,checked, node){
                if(checked){
                    this.$refs.tree.setCheckedNodes([data]);
                }
            },
        }
    }
</script>

二、隱藏父級的復選框,css大法好嘢,真的好嘢

<el-tree
  :data="deptOptions"
  node-key="id"
  :props="defaultProps"
  :expand-on-click-node="true"
  :filter-node-method="filterNode"
  :check-strictly="true"
  show-checkbox
  ref="tree"
  @check="handleNodeClick"
/>

<style lang="scss" scoped>
::v-deep .el-tree {
  // 不可全選樣式
  .el-tree-node {
    .is-leaf + .el-checkbox .el-checkbox__inner {
      display: inline-block;
    }
    .el-checkbox .el-checkbox__inner {
      display: none;
    }
  }
}
</style>

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM