【JavaScript】------- JavaScript 如何实现导入(tree)树结构数据的示例代码

实现导入树结构数据示例代码

 

  // 这个是本人在写项目提的需求而写的代码 可能和你本人需求不一样 所以你只要看明白代码怎么组合(成父子级结构)就可以了 不能照搬呀     
          // ResultDatas 就是所要组织的数据    

          var DataTable = [];
            var ListowinData = JSON.parse(localStorage.ListowinData);// 选中要添加子级树结构的类别数据
          
            for (var i = 0; lens = ResultDatas.length, i < lens; i++) {
                for (var j = 1; j <= 8; j++) {
                    var data = {};
                    var levelname = j + "级";//列字段
                    if (ResultDatas[i][levelname] != undefined && ResultDatas[i][levelname]!="") {
                        if (j != 1) {
                            var levelnames = (j - 1) + "级";
                            //判断如果本行PID=本行的行数-1 的ID (符合条件 上一行的列-1 里面的值不为空)  但是如果上一行的列-1里面的值为空 那就 把上一行的PID 赋值在本行的PID呀
                            if (ResultDatas[i - 1][levelnames] == "" || ResultDatas[i - 1][levelnames] == undefined) {
                                var flag = 0;//判断是不是上一个第一判断成功;
                                for (var p = i; 0<=p; p--){
                                    if (flag != 1) {
                                        if (ResultDatas[p - 1][levelnames] != "" && ResultDatas[p - 1][levelnames] != undefined) {
                                            data["PID"] = ResultDatas[p - 1]["id"];
                                            data["级别"] = Number(ListowinData.级别) + j;
                                            flag = 1;
                                        }
                                    }
                                }
                                flag = 0;
                            } else {
                                data["PID"] = ResultDatas[i - 1]["id"];
                                data["级别"] = Number(ListowinData.级别) + j;
                            }
                        } else {
                            data["PID"] = ListowinData.ID;
                            data["级别"] = Number(ListowinData.级别) + j;
                        }
                        data["id"] = ResultDatas[i]["id"];
                        data["项目名称"] = ResultDatas[i][levelname];
                        data["适用单位"] = ListowinData.适用单位;
                        data["适用单位编码"] = ListowinData.适用单位编码;
                        data["适用单位ID"] = ListowinData.适用单位ID;
                        DataTable.push(data);
                    }
                      
             
                }

            }

            console.log(DataTable);//最后结果  后台代码自己写呀  前台代码给你核心的代码  其他自己实现哟

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

皮皮冰要做大神

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值