bootstrap-treeview后端数据树展现
程序员文章站
2022-06-08 10:41:38
...
ajax请求后台
function getKpiTypeTree(){
rootPath = rootPath ? rootPath : getRootPath();
$.ajax({
url: rootPath +"/kpitype/queryKpiTypeForZtree?IS_VALID=1&pid=-1",
type : "post",
dataType : "json",
success : function(result) {
buildDomTree(-1,result);
},
error:function(data){
//alert(data);
}
});
}
利用递归将请求的data数据重新封装查treeview的数据格式,然后用treeview的$("#").treeview({})方法展现出来
function buildDomTree(rootNodeId,rootData) {
var retData = [];
function walk(id, data) {
if (!data) {
return;
}
for (var q = 0;q<rootData.length;q++){
var childNode = rootData[q];
if(childNode.pid == id){
var obj = new Object();
obj.id = childNode.id;
obj.text = childNode.name;
if(childNode.RES_URL){
obj.url = childNode.RES_URL;
}
obj.nodes= [];
walk(childNode.id,obj.nodes);
if(obj.nodes.length==0){
delete obj.nodes;
}
data.push(obj);
}
}
}
walk(rootNodeId,retData);
var str = JSON.stringify(retData);
console.log(str);
$("#KipType_tree").treeview({
highlightSelected: true, //是否高亮选中
backColor: '#E1E6EA',
showBorder:false,
emptyIcon:'glyphicon glyphicon-list-alt',
levels : 1,
enableLinks : true,
data:str,
levels:1
});
return retData;
}
treeview的数据格式是:
上一篇: 直接通过DAO读写Access文件
下一篇: 第二节 为什么要选择PHP_PHP