算法 --- > 递归实现多级树展开结构

说明

  • 先根据数据渲染,然后再实现事件

渲染

  • 在项目中,经常会给出一个深度不确定的数组,数字结构如下:
data = [
    {
   name: 'a', child:[{
   name: 'a1'},{
   name: 'a2', child: [{
   name:'a21'}]}]},
    {
   name: 'b'}
]
  • 要求将数组渲染成对应的目录结构, 结构如下:
<ul>
    <li>
        a
        <ul>
            <li>a1</li>
            <li>a2
                <ul>
                    <li>a21</li>
                </ul>
            </li>
        </ul>
    </li>
    <li>b</li>
</ul>
  • 思路,先对数组中的第一级数据显示出来
$(function(){
   
    var str = '<ul>';
    for(var i=0; i< data.length; i++){
   
        str += `<li>${
     data[i].name}</li>`
    }
    str += '</ul>';
    $('.tree').html(str)
})

此时页面结构如下:

在这里插入图片描述

  • 下面尝试将页面结构渲染成如下
<div class="tree">
	<ul>
		<li>
			a
			<ul>
				<li
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值