有时候我们需要写一些不知道几级的菜单,下面上代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<div id="box"></div>
<script>
var jsonarr = [{
name: '一级标题1',
submenu: [{
name: '二级标题',
submenu: [{
name: '三级标题'
},
{
name: '三级标题'
},
{
name: '三级标题'
}
]
},
{
name: '二级标题'
},
{
name: '二级标题'
},
{
name: '二级标题'
}
]
},
{
name: '一级标题2',
submenu: [{
name: '二级标题'
},
{
name: '二级标题'
},
{
name: '二级标题'
},
{
name: '二级标题'
}
]
},
{
name: '一级标题3'
}
]
var box = document.getElementById('box');
var arr = [];
var html = '';
function draw(json){
var ul = document.createElement('ul');
json.map((item)=>{
var li = document.createElement('li');
li.innerHTML = '<div>'+item.name+'</div>';
if(item.submenu){
li.appendChild(draw((item.submenu)));
}
ul.appendChild(li);
})
return ul;
}
//draw(jsonarr);
//console.log(arr);
box.appendChild(draw(jsonarr))
</script>
</body>
</html>