本文实例讲述了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>lt;lt;
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>nbsp; nbsp;
gt;gt; asp:HyperLink
ID="linkEndPage" runat="server" Font-Underline="False">尾页 /asp:HyperLink>| asp:Literal
ID="tjixx" runat="server"> /asp:Literal> /div>
更多关于asp.net相关内容感兴趣的读者可查看本站专题:《asp.net文件操作技巧汇总》、《asp.net ajax技巧总结专题》及《asp.net缓存操作技巧总结》。
希望本文所述对大家asp.net程序设计有所帮助。
您可能感兴趣的文章:- ASP.NET和MSSQL高性能分页实例代码
- asp.net+ajax简单分页实例分析
- asp.net分页功能实现
- ASP.NET无刷新分页简单实现
- asp.net实现简单分页实例
- asp.net gridview分页:第一页 下一页 1 2 3 4 上一页 最末页
- asp.net使用AJAX实现无刷新分页
- asp.net中的GridView分页问题
- ASP.NET MVC 5使用X.PagedList.Mvc进行分页教程(PagedList.Mvc)
- asp.net利用后台实现直接生成html分页的方法
- asp.net 使用js分页实现异步加载数据
- asp.net中利用Jquery+Ajax+Json实现无刷新分页的实例代码