php - html表格一页可以显示多少行?
问题描述
我有 HTML 表,我从其中的大型 MySQL 数据库中获取结果,这些结果可以是数千条记录(行)。
我的问题是 HTML 表格可以处理这种情况吗?它会扩展以在一页中显示所有这些行吗?
解决方案
据我所知,在 HTML元素rows
中可以打印的数量没有限制。<table>
但是,仅打印页面中的所有数据并不是一个好的用户体验实践(大多数情况下)。
要记住的另一点是,如果您有数千行,您的页面处理所有数据可能会变慢甚至崩溃。
您必须解决的两个选项是:
01 - 限制来自服务器的数据
如果您可以控制服务器(后端),则可以限制将返回到客户端(前端)的结果数量。
优点:
- 对数据的更多控制
- 更快的页面加载时间
缺点:
- 您的服务器变得更加复杂,因为它需要处理数据限制(分页)
- 数据中的任何操作(排序、过滤、搜索)都需要在服务器中进行,这对用户来说可能是一个缓慢的操作
02 - 在客户端使用库限制数据
今天有很多选择。从纯 Javascript 到 jQuery、React 等。这一切都取决于您使用的技术,但快速搜索“javascript 表库”将为您返回很多选项。
您也可以自己处理,但这些库通常经过优化,可以通过使用虚拟化和其他技术来处理大量数据。
优点:
- 操作通常对用户来说更快
- 客户端的更多控制(意味着对用户的更多控制)
缺点:
- 初始加载时间通常较慢(因为您需要加载整个数据)
- 对第三方库的可能依赖及其限制
推荐阅读
- asp.net - 如何将带有 scss 文件的文件夹包含到 asp.net 项目或如何使用它,这可能吗?
- printing - XPS Writer 完成后启动外部 .exe
- c# - WPF 在方法内创建并显示一个新窗口并获取其结果
- django - 'NoneType' 对象在 Django 中没有属性?
- reactjs - ReactJS Props 没有加载到 componentWillMount() 和 componentDidMount()
- laravel - 数组在修改元素时无反应,仅在添加或删除时
- python - 如何在 Django 中使用 TailwindCSS?
- gmail-api - 如何将客户端应用程序添加到另一个 GSuite 公司?
- javascript - 有什么区别,什么更好用:工厂函数与构造函数。请推理您的方法,以便我学习
- flutter - 无法从 sharedPrefrence 中获取数据列表