layui tree customSelet选中的内容重写,查找父级

layui tree customSelet选中的内容重写,查找父级

需要重新源码

// 递归查找函数

// tree 所有数据 ,nodeId选中数据id值

function findParent(tree, nodeId, parent = null) {
    for (let i = 0; i < tree.length; i++) {
        if (tree[i].id === nodeId) {
            return parent;
        }
        if (tree[i].children && tree[i].children.length > 0) {
            const found = findParent(tree[i].children, nodeId, tree[i]);
            if (found) return found;
        }
    }
    return null;
}

源码位置

      onclick: function (data) {
            var values = '';
            var parent1 = findParent(datas, data.data.id);
            var parent1_val = '';
            var parent_val = '';
            if(parent1){
                parent1_val = data.data.title
                values = parent1.title + ' -> ' + data.data.title
                var parent = findParent(datas, parent1.id);
                if(parent){
                    parent_val = parent.title
                    values = parent_val + ' -> ' + parent1.title + ' -> ' + data.data.title
                }
            }
            $el.val(values)
            checked({
                obj: data,
                checkedDatas: null,
                combData: {
                    values: data.data.title,
                    idents: data.data.id,
                    datas: data.data
                }
            })
            $(listm).hide()
        }

选中金水区 显示内容如下:

河南省 -> 郑州市 -> 金水区

相关推荐
沉默璇年1 小时前
react中useMemo的使用场景
前端·react.js·前端框架
yqcoder1 小时前
reactflow 中 useNodesState 模块作用
开发语言·前端·javascript
2401_882727571 小时前
BY组态-低代码web可视化组件
前端·后端·物联网·低代码·数学建模·前端框架
SoaringHeart1 小时前
Flutter进阶:基于 MLKit 的 OCR 文字识别
前端·flutter
会发光的猪。2 小时前
css使用弹性盒,让每个子元素平均等分父元素的4/1大小
前端·javascript·vue.js
天下代码客2 小时前
【vue】vue中.sync修饰符如何使用--详细代码对比
前端·javascript·vue.js
猫爪笔记2 小时前
前端:HTML (学习笔记)【1】
前端·笔记·学习·html
前端李易安2 小时前
Webpack 热更新(HMR)详解:原理与实现
前端·webpack·node.js
红绿鲤鱼2 小时前
React-自定义Hook与逻辑共享
前端·react.js·前端框架
Domain-zhuo3 小时前
什么是JavaScript原型链?
开发语言·前端·javascript·jvm·ecmascript·原型模式