jQuery 列表渲染实战:接口数据循环渲染到页面(含图片地址兼容、空数据处理)
前言后台管理系统最常见的需求就是表格列表渲染拿到后端返回的接口数组数据循环拼接 HTML 渲染到页面。很多新手会遇到几个典型问题接口无数据时不会展示「暂无数据」图片地址有的带完整 http 域名、有的只返回相对路径图片加载失败模板字符串拼接逻辑混乱图片、状态文字不知道怎么嵌入循环不清楚三元表达式在模板内怎么使用今天结合项目实战代码完整讲解一套通用的列表渲染方案。一、整体思路梳理整套渲染流程固定分为 4 步声明空字符串变量 html用来持续拼接所有行 HTML 代码边界判断如果接口返回数组长度为 0直接渲染「暂无数据」终止后续逻辑for 循环遍历接口数组单条数据使用 item 接收优先处理图片字段兼容「完整网络地址 / 相对路径」两种情况无图展示默认文字状态字段直接利用三元表达式渲染不同文字 / 样式使用模板字符串 拼接当前行所有单元格 HTML循环结束后一次性把拼接好的 html 塞入页面容器完成渲染小优化不要在循环里频繁执行.html()多次操作 DOM 性能差全部拼接完成再一次性渲染。二、完整代码实现渲染函数主体javascript运行function renderList(data) {// 定义空字符串承载拼接的htmllet html ‘’;// 【边界处理无数据场景】 if (data.length 0) { html div classtable_row div classtable_cell stylewidth:100%;text-align:center;暂无数据/div /div; $(#tableBody).html(html); return; // 终止函数不再执行循环 } // 循环遍历接口每一条数据 for (let i 0; i data.length; i) { let item data[i]; // item 当前循环的单条数据 // 单独处理图片逻辑 // 默认没有图片展示文字 let imgHtml span stylecolor:#999;font-size:12px;暂无照片/span; // 判断当前条目存在图片字段 if (item.img) { // startsWith 判断字符串开头是否包含http // 兼容两种情况后端返回完整url / 只返回相对路径 let src item.img.startsWith(http) ? item.img : http item.img; // 覆盖默认值生成图片标签 imgHtml img src${src} classtable-img-preview stylewidth:68px;height:43px;object-fit:cover;cursor:pointer;border-radius:4px; alt商品图片; } // 拼接单行HTML html ul classtable_row li classcell_check input typecheckbox classitem-checkbox value${item.id} /li li classcell_id${item.id}/li li classcell_name${item.content}/li !-- 状态渲染三元表达式切换class与文字 -- li classcell_name span classstatus-btn ${item.type 1 ? 1 : 2} ${item.type 1 ? 上架 : 下架} /span /li li classcell_name span classstatus-btn ${item.status 1 ? 1 : 2} ${item.status 1 ? 是 : 否} /span /li !-- 图片单元格直接引入预处理好的imgHtml -- li classcell_name${imgHtml}/li li classcell_name${item.create_time}/li li classcell_name${item.update_time ? item.update_time : item.create_time}/li li classcell_operation button classbtn-edit>变量注入数据循环结束后统一{变量}注入数据 循环结束后统一变量注入数据循环结束后统一(容器).html(html)渲染 DOM渲染完成执行后置方法样式、事件绑定五、拓展小提示不要在循环内执行 DOM 操作多次.append()频繁重绘页面性能更低如果使用分页每次切换页码直接调用renderList(当前页数据)刷新列表编辑、删除按钮带上data-id“${item.id}”后续通过事件委托拿到当前条目 ID如果有多图展示可以把imgHtml改成循环拼接多张图片六、调用示例发起接口请求拿到数据后直接调用渲染函数javascript运行function getList() {$.get(‘/api/getData’, function(res) {// res.data 就是后端返回的数组renderList(res.data);})}// 页面加载初始化getList();

相关新闻

千笔AI与PaperRed:智能写作工具对比与使用技巧

千笔AI与PaperRed:智能写作工具对比与使用技巧

1. 项目背景与工具定位 在学术写作和自考备考领域,时间成本和内容质量始终是两大核心痛点。最近接触到两款智能写作工具——千笔AI写作和PaperRed,它们都主打"一键生成论文"功能,但在实际使用中发现两者的设计理念和适用场景存在明…

2026/7/24 13:50:48 阅读更多 →
白底一寸电子版照片自制全攻略:尺寸规范 + 多种实操方法

白底一寸电子版照片自制全攻略:尺寸规范 + 多种实操方法

2026 年求职简历、各类线上考试报名、政务业务办理都会频繁用到白底一寸电子版证件照。不少人不清楚一寸照片官方像素标准,也想找到手机免费制作一寸证件照的可行方案。想要做出可以顺利上传系统、一次通过审核的白底一寸电子照,可以分为前期拍摄、工具处…

2026/7/24 13:50:48 阅读更多 →
VC++与ACCESS集成处理MODIS亮温数据与云检测实战

VC++与ACCESS集成处理MODIS亮温数据与云检测实战

1. 项目概述与核心价值 最近在整理一个老项目,是关于MODIS卫星遥感数据的处理。具体来说,是用VC开发了一个系统,专门用来读取MODIS的亮温数据,然后进行云检测,最后把结果存到ACCESS数据库里。这个项目听起来有点老派&a…

2026/7/24 13:49:48 阅读更多 →

最新新闻

Fable、Sol Pro与Kimi K3诗歌生成模型对比测试与部署实践

Fable、Sol Pro与Kimi K3诗歌生成模型对比测试与部署实践

这次我们来看一个很有意思的模型对比测试:Fable、Sol Pro 和 Kimi K3 三个模型在写诗任务上的表现。这个测试结果来自实际评测,Fable 在诗歌创作的质量和稳定性上表现突出。 对于需要本地部署或 API 调用的用户来说,最关心的是这三个模型的门…

2026/7/24 13:58:50 阅读更多 →
8位 ALU 算术逻辑单元 FPGA 设计 VHDL Quartus

8位 ALU 算术逻辑单元 FPGA 设计 VHDL Quartus

名称:8位 ALU 算术逻辑单元 FPGA 设计 VHDL Quartus软件:Quartus语言:VHDL功能介绍该工程实现了一个以 8 位 ALU 为核心的 VHDL 数字系统,适合学习 FPGA 中组合逻辑模块的拆分、功能选择控制、测试平台编写以及顶层板级接口连接。…

2026/7/24 13:58:50 阅读更多 →
基于图神经网络与物理约束的水质监测系统开发

基于图神经网络与物理约束的水质监测系统开发

1. 项目背景与核心价值水质监测与污染溯源一直是环境科学领域的重大挑战。传统水质分析方法通常依赖实验室检测和统计模型,存在采样周期长、成本高、难以捕捉时空动态变化等局限。我们团队尝试将深度学习中的预训练技术、图神经网络与物理约束相结合,构建…

2026/7/24 13:58:50 阅读更多 →
大模型技术全景:从训练到推理的完整指南

大模型技术全景:从训练到推理的完整指南

1. 大模型技术全景图:从训练到推理的完整生命周期当前AI领域最激动人心的进展莫过于大语言模型的爆发式发展。作为一名全程参与多个百亿参数规模模型研发的工程师,我亲眼见证了从早期BERT时代的微调范式到如今GPT-4级别模型的根本性变革。这个演进过程不…

2026/7/24 13:58:50 阅读更多 →
Coze知识库搭建:智能化管理与高效检索实践

Coze知识库搭建:智能化管理与高效检索实践

1. 知识库搭建的核心价值与平台选择在信息爆炸的时代,如何高效管理和利用知识资产成为每个团队和个人的必修课。Coze平台的知识库功能正是为解决这一痛点而生。不同于传统的文档管理系统,它通过智能化的知识组织和检索机制,让散落在各处的信息…

2026/7/24 13:58:50 阅读更多 →
从 curl 到工程封装:血型遗传查询 API 实战

从 curl 到工程封装:血型遗传查询 API 实战

使用场景与接口价值 血型遗传查询是 ABO 血型系统的经典应用。根据父母的血型组合(共 16 种),利用显性遗传规律可以推算出子女可能的血型以及不可能出现的血型。该接口常用于: 亲子问答小游戏(如“爸妈一个 A 一个 B…

2026/7/24 13:57:50 阅读更多 →

日新闻

用Highcharts 创建可拖拽三维散点立方体3D图表

用Highcharts 创建可拖拽三维散点立方体3D图表

该案例基于Highcharts scatter3d 三维散点图实现空间立方体散点可视化,核心特色:三维 X/Y/Z 三轴空间,所有散点分布在 0~10 立方体空间内;散点使用径向渐变实现立体 3D 圆球质感;支持鼠标 / 触屏拖拽画布,…

2026/7/24 0:00:29 阅读更多 →
AppCertDlls:进程创建路径上的 DLL 入口

AppCertDlls:进程创建路径上的 DLL 入口

AppCertDlls:进程创建路径上的 DLL 入口 AppCertDlls 位于 HKLM\System\CurrentControlSet\Control\Session Manager\AppCertDlls。本文的程序功能是只读列出这个键在 64 位和 32 位注册表视图中的全部值,并显示每条值的来源、名称、类型和可安全显示的数…

2026/7/24 0:00:29 阅读更多 →
我的编程之路:第一篇博客

我的编程之路:第一篇博客

大家好,我是一名编程初学者,同时这也是我编程学习之路上的第一篇博客。在这里,我想要向大家介绍我的一些想法和规划。a.自我介绍我是一个刚刚接触编程的新手,目前在学习c语言,我对编程世界充满了强烈的好奇。当然&…

2026/7/24 0:00:29 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/24 3:59:20 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/24 1:23:39 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/23 17:49:47 阅读更多 →

月新闻