我正在使用Datatable
来填充我的网站项目中的大量记录。由于数据量很大,我不想加载所有记录,因此显然我需要以分页的方式进行。
所以,在我的Datatable
我希望每个页面只显示10条记录,然后当用户点击分页按钮“2,3,....”或点击“下一步”时我想要然后绑定click事件以获取单击的页码,并根据该显示显示下一批记录。
我有query
我将在SQL Server
方面使用它来获取相应的数据:
SELECT * FROM TABLENAME ORDER BY INSERTED_TIMESTAMP OFFSET 10 ROWS FETCH NEXT 10 ROWS ONLY;
我希望根据请求的页码更改offset
值。我想到的想法是获取点击的分页button
数字,然后乘以10。
所以我的问题是如何做到这一点,如果你有任何其他建议,请建议我
答案 0 :(得分:1)
有两种方法可以完成这项任务。
让UI按住一个键来跟踪当前正在提取的页面。所以说最初这个值是0.当你点击下一个按钮时,将这个值增加1并乘以页面大小(在你的情况下为10)。这可以为您提供偏移和开始位置。
对于后端的每个响应,发送一个给出下一个偏移量的键。所以说你第一次发送请求,响应返回一个偏移量为11的密钥。下次使用它来获取下一组记录。
希望这有帮助。
答案 1 :(得分:0)
您可以使用Server Side Pagination
的{{1}}功能。这里有完整的文档。
https://datatables.net/examples/data_sources/server_side.html
上述链接中的基本想法是,当您点击datatables
或page number
next button
通过server side
进行通话时。在该通话中,您可以获得ajax
或page number
和start
。您可以使用这些数字从数据库中获取数据并发送回end
。