如何使用 JavaScript 精确统计 HTML 表格中非空行的数量
发布时间 - 2026-01-31 00:00:00 点击率:次本文介绍如何通过 jquery 或原生 javascript 过滤掉 html 表格中内容全为空(如仅含空白符、空标签)的 `
在处理动态或手动编辑的 HTML 表格时,常会遇到“看似有行、实则无数据”的情况——例如仅含空
要精准统计非空行(即至少有一个单元格包含可见文本内容),关键在于:对每一行提取其全部文本内容 → 去除首尾空白 → 判断是否为空字符串。
✅ 推荐方案:使用 jQuery + filter()(更健壮、语义清晰)
? $.trim() 自动处理各种空白字符(空格、\t、\n、\r),比直接比较 "\t\t" 更可靠,且不受 HTML 缩进格式影响。
✅ 替代方案:纯 JavaScript(无需 jQuery)
document.addEventListener('DOMContentLoaded', () => {
document.querySelector('button').addEventListener('click', () => {
const rows = document.querySelectorAll('#myTable tr');
const nonEmptyCount = Array.from(rows).filter(row =>
row.textContent.trim() !== ''
).length;
alert(`非空行数量:${nonEmptyCount}`);
});
});⚠️ 注意事项
- 表头 和脚部
中的行也参与统计:若需排除
行(如仅统计 数据行),请改用 $("#myTable tbody tr") 或 document.querySelectorAll('#myTable tbody tr')。- 隐藏行(display: none)仍被计入:如需跳过隐藏行,可在过滤条件中追加 && $(this).is(':visible')(jQuery)或 row.offsetParent !== null(原生)。
- 空单元格含 或零宽字符? textContent.trim() 可覆盖常见空白,但若存在 Unicode 零宽空格(U+200B)等特殊字符,建议额外正则清洗:.replace(/[\u200B-\u200D\uFEFF]/g, '').trim()。
✅ 总结
统计非空行的本质是内容校验而非结构计数。避免依赖固定字符串匹配(如 "\t\t"),而应统一使用 textContent + trim() 判断逻辑有效性。该方法兼容各种 HTML 缩进风格、空标签组合及富文本场景,是生产环境推荐的稳健实践。
# javascript
# java
# jquery
# html
# js
# ajax
# cdn
# NULL
# Filter
# 字符串
# Length
# this
# display
# tbody
# td
# tr
# th
# 为空
# 单元格
# 不受
# 可在
# 而非
# 如需
# 关键在于
# 跳过
# 偏高
# 有一个
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
LinuxCD持续部署教程_自动发布与回滚机制
如何快速搭建高效服务器建站系统?
如何用低价快速搭建高质量网站?
Laravel如何编写单元测试和功能测试?(PHPUnit示例)
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
Laravel中间件如何使用_Laravel自定义中间件实现权限控制
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
JS碰撞运动实现方法详解
在Oracle关闭情况下如何修改spfile的参数
公司网站制作需要多少钱,找人做公司网站需要多少钱?
如何在建站之星绑定自定义域名?
如何在七牛云存储上搭建网站并设置自定义域名?
香港服务器租用费用高吗?如何避免常见误区?
JavaScript如何实现路由_前端路由原理是什么
个人网站制作流程图片大全,个人网站如何注销?
高端建站三要素:定制模板、企业官网与响应式设计优化
通义万相免费版怎么用_通义万相免费版使用方法详细指南【教程】
图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?
Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID
成都网站制作公司哪家好,四川省职工服务网是做什么用?
网站建设保证美观性,需要考虑的几点问题!
油猴 教程,油猴搜脚本为什么会网页无法显示?
Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】
Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明
HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】
电商网站制作价格怎么算,网上拍卖流程以及规则?
Android实现代码画虚线边框背景效果
html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】
桂林网站制作公司有哪些,桂林马拉松怎么报名?
历史网站制作软件,华为如何找回被删除的网站?
如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框
Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门
如何在腾讯云服务器快速搭建个人网站?
宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法
JavaScript如何实现错误处理_try...catch如何捕获异常?
制作旅游网站html,怎样注册旅游网站?
WordPress 子目录安装中正确处理脚本路径的完整指南
Laravel如何自定义分页视图?(Pagination示例)
Laravel如何使用模型观察者?(Observer代码示例)
如何用西部建站助手快速创建专业网站?
Laravel如何操作JSON类型的数据库字段?(Eloquent示例)
邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?
Laravel如何使用Eloquent进行子查询
Laravel如何使用Livewire构建动态组件?(入门代码)
Laravel如何优化应用性能?(缓存和优化命令)
php静态变量怎么调试_php静态变量作用域调试技巧【解答】
百度输入法ai组件怎么删除 百度输入法ai组件移除工具
用v-html解决Vue.js渲染中html标签不被解析的问题
如何快速搭建自助建站会员专属系统?
Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布

