实现导入树结构数据示例代码
// 这个是本人在写项目提的需求而写的代码 可能和你本人需求不一样 所以你只要看明白代码怎么组合(成父子级结构)就可以了 不能照搬呀
// 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);//最后结果 后台代码自己写呀 前台代码给你核心的代码 其他自己实现哟