#javascript #jquery
Вопрос:
Я отвечаю за поддержание старого проекта с использованием jQuery и PHP. У меня проблема с созданием комбинации разбиения на страницы, выбором фильтра и поиском по списку div. В настоящее время мой подход заключается в использовании встроенных функций hide() и show() в jQuery для отображения данных для этих 3 функций. Например, когда пользователь разбивает страницу на страницы, я скрываю() все div на предыдущей странице. и показать() дивы на следующей странице. Тем не менее, я изо всех сил пытаюсь управлять потоком данных между 3 функциями. Например, когда я сначала просматриваю страницу, а затем выбираю какой-нибудь фильтр. Список данных для разбиения на страницы больше не является правильным.
Ответ №1:
Поступают ли данные со стороны сервера (php)?
То, что вам нужно попытаться достичь, — это фиксированный / известный набор элементов, которые вы можете фильтровать, искать и просматривать по страницам. В таком порядке. Конечно, с последней страницей.
Очевидно, что если у вас есть набор результатов, основанный на некоторых критериях (пустой поиск или пустой фильтр), количество страниц в наборе результатов будет отличаться от того, что было бы, если бы у вас был непустой поиск или фильтр. Вам нужно принять это во внимание.
Я бы посоветовал, чтобы при изменении поиска или фильтра вы возвращались на страницу 1. Разбиение на страницы связано с имеющимися у вас результатами, в то время как поиск и фильтр определяют имеющиеся у вас результаты. Имеет ли это смысл?
Сначала я бы применил поиск и/или фильтр, чтобы выяснить, сколько у меня страниц, а затем сбросил текущую страницу на 1.