我目前有分页功能,可显示总页数,但我想知道如何显示类似于Google搜索结果的页面链接?基本上一次只显示10个链接,如果当前页面大于7,则显示的第一个链接将是currentPageIndex - 5.
这是我当前的Razor / html,它显示的链接数量等于总页数:
@for (int i = 0; i < Model.PageCount; i++)
{
if (Model.CurrentPageIndex == i)
{
<li id="page@(i)" class="disabled"><a href="#">@(i + 1)</a></li>
}
else
{
<li id="page@(i)"><a href="/Search/@(i.ToString() + "?q=" + Model.SearchTerm)">@(i + 1)</a></li>
}
}
答案 0 :(得分:1)
这似乎是一个逻辑问题,而不是剃刀问题。
@{
int pagesDisplayed = 10;
int firstPage = Model.CurrentPageIndex - pagesDisplayed / 2;
if(firstPage < 0){
firstPage = 0;
}
}
@for (int i=firstPage; i <= (firstPage + pagesDisplayed); i++){
if (Model.CurrentPageIndex == i)
{
<li id="page@(i)" class="disabled"><a href="#">@(i + 1)</a></li>
}
else
{
<li id="page@(i)"><a href="/Search/@(i.ToString() + "?q=" + Model.SearchTerm)">@(i + 1)</a></li>
}
}