菜单树代码

之前做过的题

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

var arr = [
{name:'学习',id: '0',parentId:null},
{name:'看书',id: '1',parentId:'0'},
{name:'做题',id: '2',parentId:'0'},
{name:'苏菲的世界',id: '3',parentId:'1'},
{name:'高数',id: '4',parentId:'2'},
{name:'英语',id: '5',parentId:'2'}
];
var firstMenu = "<ul>",
len = arr.length;
function tree(arr){
for(let i=0;i<len;i++){
if(arr[i].parentId == null){
firstMenu += "<li>"+arr[i].name;
second(arr, arr[i]);
}
}
firstMenu += "</li></ul>";
$(".tree").append($(firstMenu));
}
function second(arr, father){
let isFirst = true,
sec = " ";
for(let i=0;i<len;i++){
if(arr[i].parentId == father.id){
if(sec == " "){
sec = "<ul>"
firstMenu += sec;
};
sec = "<li>"+arr[i].name;
firstMenu += sec;
second(arr, arr[i]);
}
}
if(sec != " ") firstMenu+="</ul></li>";
}
$((){ tree(arr); });
# </script>