前端树形二级列表渲染 + 页面传参完整实战解析(附原生jQuery源码)

在后台管理系统、数据展示平台中,树形二级列表展示和页面之间数据传参是最基础且高频的核心需求。常见应用场景:分类层级展示、父子级数据列表、点击主条目跳转详情页并携带对应数据。

本文将基于 jQuery 实战代码,完整拆解两大核心功能:

  1. 父子级二级列表动态渲染 + 折叠/展开交互逻辑
    本次实战分为 主页面 和 子页面 两个模块,完整业务流程如下:
  2. 子页面:页面加载后读取本地存储的参数,解析数据并渲染二级子数据,同时清空本地存储,避免数据残留。
    二、核心功能一:二级树形列表动态渲染与折叠交互
    2.1.1 一级列表渲染逻辑
  3. 嵌入箭头图标,并绑定 data-id,作为折叠展开的触发标识。
    每次渲染完一条一级数据后,立即判断当前条目 children 数组长度是否大于0,若存在子数据,则进入二层循环渲染二级列表。
    2.2 二级列表折叠/展开交互原理
    代码使用 $(document).on('click', '.arrows', function(){}) 事件委托,而非直接绑定点击事件。
  4. 点击箭头时,通过 $(this).data('id') 获取当前父级条目的ID。
    该逻辑可以实现:一对一精准控制,不同父级的二级列表完全独立交互,是树形列表最标准的实现方案。
    前端跨页面传参常见方案:URL拼接参数、sessionStorage、localStorage、cookie。本项目选择 localStorage,适合传递完整对象数据,无长度限制、使用简单。
    点击「查看详情」按钮时,触发自定义点击事件,完成数据获取、存储、跳转三步操作。
  5. 精准匹配行数据:通过数组 find 方法,根据ID从原始数组中匹配出完整的当前行对象数据(包含一级数据和所有二级children子数据)。
    3.2 子页面:数据读取、解析与回显
  6. 读取本地数据:通过 localStorage.getItem('chuandi') 获取存储的字符串数据。
  7. 数据渲染:调用自定义函数遍历数据,渲染所有二级子条目。
    ✅ 方案优势
  • 数据精准,通过ID匹配,不会出现数据串扰问题。
  • 不清除本地缓存:二次打开页面会加载上一次的旧数据。
    四、子页面数据渲染逻辑拆解
  1. 外层循环遍历传递过来的一级数据数组。
  2. 最终插入页面容器,完成数据回显。
    五、整体代码优化总结
  3. 兼容性强:事件委托适配动态DOM,容错代码避免空数据报错。
    5.2 可拓展方向
  • 增加参数校验,过滤空数据、异常数据。
    六、全文核心思路复盘
  1. 编码思想:功能模块化、逻辑解耦、容错处理、精准匹配,是前端数据列表开发的通用标准思路,可直接复用在各类后台管理项目中。
相关推荐
excel10 分钟前
双 Token 与前端使用 Crypto 公私钥鉴权换 Token,哪种方案更好?
前端·后端
外收内放11 分钟前
Python基础语法练习题(73)
java·前端·python
风骏时光牛马1 小时前
面向复杂场景的大模型应用落地与能力优化实践
前端
小小善后师1 小时前
我做了个病历归档小程序,被 AI 识别的"最后一公里"狠狠上了一课
前端
H_Lisa1 小时前
我用 Express 写了个 MCP,Claude 直接调用我的 API 了
前端
IT_陈寒1 小时前
React的useEffect依赖数组把我坑惨了
前端·人工智能·后端
兰亭妙微UI设计公司2 小时前
兰亭妙微ui设计公司分享:B端组件命名如何支持团队协作
前端·javascript·vue.js
云和数据.ChenGuang3 小时前
光哥说Python 异常深度解析:从异常模型到工程化实践
java·前端·人工智能·python·langchain
小大宇3 小时前
Vue知识点-ElementPlus-03提示框+询问+通知
前端·javascript·vue.js
前端技术官4 小时前
前端的技术判断力是怎么练出来的?
javascript·web前端·localstorage·debounce·弱网处理