选择过滤器后,将形成一个新的分页(具有正确的页数),但是,通过单击过滤元素的任何下一页,过滤器会飞,并且会显示数据库中的所有元素,而不是那些被选中的元素由过滤器。需要以某种方式更新分页链接?或者可以做什么?
这是分页类。
过滤器以通常的方式工作 - 当您单击过滤器时,Ajax 将选定的过滤器及其值发送到 php,php 生成一个 sql 查询并从数据库中返回选定的元素作为响应。选择过滤器后,一切正常(仅显示来自数据库的过滤元素),但如果您单击分页中的任何其他页面,过滤器会误入歧途,并且会显示数据库中的所有元素,并且不仅仅是那些被过滤的。
一般的解决方案是在 ajax 请求的 url 中添加过滤选项,并使用相同的 jQuery 更新分页:
问题解决了。
所要做的就是向显示数据的页面添加一个 php 代码,该代码获取获取参数并基于它们构建数据库查询。例如,如果有
?price=100 или ?price=100&color=red,然后建立一个查询SELECT * FROM table WHERE price = '100' AND color = 'red';