1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
| <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="stylesheet" href="https://unpkg.com/layui@2.6.8/dist/css/layui.css"> <title>Document</title> </head> <body> <div id="test1" class='demo-tree'></div> <script src="https://unpkg.com/layui@2.6.8/dist/layui.js"></script> <script> var data=[ {id:'aa',pId:'0',text:'root1'}, {id:'bb',pId:'aa',text:'left1'}, {id:'cc',pId:'aa',text:'left2'}, {id:'dd',pId:'0',text:'root2'}, {id:'ee',pId:'dd',text:'left3'}, {id:'ff',pId:'bb',text:'right1'}, ]; console.log(data); var formatdata=[]; for(var i in data){ if(data[i].pId=='0'){ var tempObject={}; tempObject.title=data[i].text; tempObject.id=data[i].id; tempObject.children=getChildren(tempObject.id); formatdata.push(tempObject); } } function getChildren(id){ var tempArray=[]; for(var i in data){ if(data[i].pId==id){ var tempChild={}; tempChild.title=data[i].text; tempChild.id=data[i].id; if(selectChildren(data[i].id)){ tempChild.children=getChildren(data[i].id); } tempArray.push(tempChild); } } return tempArray; } function selectChildren(id){ for(var i in data){ if(data[i].pId==id){ return true; } } return false; }
console.log(formatdata); layui.use('tree', function(){ var tree = layui.tree; var inst1 = tree.render({ elem: '#test1' ,data:formatdata ,edit: ['add', 'update', 'del'] ,click: function(obj){ layer.msg(JSON.stringify(obj.data)); } }); }); </script> </body> </html>
|