DataTable仅显示前200行 SQLite存储的985条数据无法完整展示如何解决
DataTable仅展示前200行数据解决方案
排查前提
先确认原始页面的表格数据量:打开浏览器开发者工具,查看#table_id下的<tbody>内<tr>的总数,如果总数仅为200,属于后端数据输出问题;如果总数为985,属于DataTable配置问题。
对应解决方案
后端输出数据不足
检查SQLite查询逻辑,确认是否在查询时添加了LIMIT 200限制,或者后端接口、服务端渲染逻辑中做了分页截断,移除对应限制,将全量985条数据渲染到页面表格中即可。
DataTable配置限制
DataTable默认开启分页功能,默认单页展示行数通常为200以内,可根据需求选择以下两种修改方案:
方案1:关闭分页,全量展示所有数据
新增paging: false配置,直接展示所有加载到表格内的数据:
$(document).ready( function () { $('#table_id').DataTable({ dom: 'B<"clear">lfrtip', paging: false, // 关闭分页 buttons: { name: 'primary', buttons: [ 'copy', 'csv', 'excel', 'pdf' ] } }); });
方案2:保留分页,调整单页展示行数上限
新增pageLength和lengthMenu配置,自定义单页展示行数和可选行数:
$(document).ready( function () { $('#table_id').DataTable({ dom: 'B<"clear">lfrtip', pageLength: 1000, // 单页默认展示1000行,覆盖默认限制 // 自定义下拉可选的行数,最后一项-1对应展示全部 lengthMenu: [ [10, 50, 200, 1000, -1], [10, 50, 200, 1000, "全部"] ], buttons: { name: 'primary', buttons: [ 'copy', 'csv', 'excel', 'pdf' ] } }); });
提示:DataTable的导出按钮默认会导出所有加载到表格内的全量数据,和当前分页展示的行数无关,无需额外调整导出配置。
内容的提问来源于stack exchange,提问作者tibas
相关产品推荐
相关产品推荐

