Как написать логику разбиения на страницы?

Может ли кто-нибудь дать какую-нибудь идею / логику для написания логики разбивки на страницы для страницы поиска, над которой я работаю? У меня есть общее количество страниц для этого поиска - 10 записей на страницу , также мне прислали номер предыдущей и следующей страницы (без проблем написать логику, все, что мне нужно сделать, я извлекаю эту информацию и заполняю. Я также получаю информацию о том, на какой странице я нахожусь. Я могу отображать только 10 страниц, как показано ниже

<previous 1 |2 |3 | 4| 5 | 6 | 7 | 8 | 9 | 10 next>

Скажите, если общее количество страниц равно 15, и когда пользователь нажимает «Далее», то мне нужно отображать вот так

<previous 2 |3 |4 |5 |6 |7 |8 |9 |10 |11 next>

В любой момент мне просто нужно показать 10 страниц в разбивке на страницы.

 #set($start = 1)
 #set($end = $Integer.parseInt($searchTO.getPagination().getNumberofPages()))
 #set($range = [$start..$end])

#set($iter = 1)
            #foreach($i in $range)
              #foreach($link in $searchTO.getPagination().getDirectPageLinks())
                    #if($i == $iter)
                        #if ($Integer.parseInt($searchTO.getPagination().getPageNumber())==$iter)
                            <a class="search_current" href="/?_page=SEARCH&_action=SEARCH$link">$i &nbsp|</a>
                        #else
                            <a href="/?_page=SEARCH&_action=SEARCH$link">$i &nbsp|</a>
                        #end
                        #set($iter = 1)
                        #break
                    #else
                        #set($iter=$iter+1)
                    #end

                 #end

            #end
7
задан pushya 19 October 2011 в 12:46
поделиться