如何在Asp.Net项目中实现一个分页函数?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
功能:
1.每页设置显示9页,超过9页,点5页后的+1页显示(可以随便修改)
2.CSS样式自己可以设置
3.无任何咋代码产生,利于搜索引擎优化
分页程序
objPDS = new PagedDataSource();
objPDS.DataSource = dtTable.DefaultView;//绑定数据源
objPDS.AllowPaging = true;
objPDS.PageSize =10;//分页数目
int curPage;
int cshi;
int jshi;
int zyes = Int32.Parse( objPDS.PageCount.ToString());
this.tjixx.Text = "总共 <font color=red>" + dtTable.Rows.Count + " </font>条信息";
this.tjixx.Text += "|共 <font color=red>" + zyes + " </font>页";
if (Request.QueryString["Page"] != null)
{
if (Int32.Parse(Request.QueryString["Page"]) > zyes)
curPage = zyes;
else
curPage = Int32.Parse(Request.QueryString["Page"]);
}
else
{
curPage = 1;
}
if (zyes <= 9)
{
cshi = 1;
jshi = zyes;
}
else
{
if (curPage <= 5)
{
cshi = 1;
jshi = 9;
}
else
{
cshi = curPage - 4;
int jshils = curPage + 4;
if (jshils > zyes)
jshi = zyes;
else
jshi=curPage + 4;
}
}
objPDS.CurrentPageIndex = curPage - 1;
StringBuilder m_strPageInfo = new StringBuilder();
for (int i = cshi; i <=jshi; i++)
{
if (i == Int32.Parse(curPage.ToString()))
m_strPageInfo.Append(" <span class=\"dqye\"> <strong>" + i + " </strong> </span> ");
else
m_strPageInfo.Append(" <span class=\"qtye\"> <strong> <a href=\"newslist_ej" + Request.QueryString["wzcat"] + "_Page" + i + ".html\">" + i + " </a> </strong> </span> ");
}
this.yemsl.Text = m_strPageInfo.ToString();
if (!objPDS.IsFirstPage)
{
linkPre.NavigateUrl = "newslist_ej" + Request.QueryString["wzcat"] + "_Page" + Convert.ToString(curPage - 1);
linkPre.NavigateUrl += ".html";
}
if (!objPDS.IsLastPage)
{
linkNext.NavigateUrl = "newslist_ej" + Request.QueryString["wzcat"] + "_Page" + Convert.ToString(curPage + 1);
linkNext.NavigateUrl += ".html";
}
linkFirstPage.NavigateUrl = "newslist_ej" + Request.QueryString["wzcat"] + "_Page1";
linkFirstPage.NavigateUrl += ".html";
linkEndPage.NavigateUrl = "newslist_ej" + Request.QueryString["wzcat"] + "_Page" + objPDS.PageCount.ToString();
linkEndPage.NavigateUrl += ".html";
this.DataList4.DataSource = objPDS;//绑定分页的数据
this.DataList4.DataBind();
Aspx文件:
分页部分:
<div align="center"> <asp:HyperLink ID="linkFirstPage" runat="server" Font-Underline="False">首页 </asp:HyperLink><<
<asp:HyperLink ID="linkPre" runat="server" Font-Underline="False">上一页 </asp:HyperLink>
<asp:Literal ID="yemsl" runat="server"> </asp:Literal>
<asp:HyperLink ID="linkNext" runat="server" Font-Underline="False">下一页 </asp:HyperLink>
>> <asp:HyperLink
ID="linkEndPage" runat="server" Font-Underline="False">尾页 </asp:HyperLink>| <asp:Literal
ID="tjixx" runat="server"> </asp:Literal> </div>
关于如何在Asp.Net项目中实现一个分页函数问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。