前端代码:
<style type="text/css">
.pages {
text-align:center;
}
.pages span {
border-style:groove;
border-width:1px;
padding:2px 5px 2px 5px;
}
.pages .pagenum {
border:none;
}
</style>
<ul>
<asp:Repeater ID="RepList" runat="server">
<ItemTemplate>
<li style="width:90%; margin:auto;margin-top:10px;"><a href='Design.aspx?id=<%#Eval("id") %>'><%#Eval("idName").ToString().Length>20?Eval("idName").ToString().Substring(0,20)+"...":Eval("idName") %></a><span style="float:right;color:#808080;"><%#Eval("idAddDate") %></span></li>
</ItemTemplate>
</asp:Repeater>
</ul>
<div class="pages">
<span><asp:LinkButton ID="FirstPage" runat="server" OnClick="FirstPage_Click">首页</asp:LinkButton></span>
<span><asp:LinkButton ID="BackPage" runat="server" OnClick="BackPage_Click">上一页</asp:LinkButton></span>
<span><asp:LinkButton ID="NextPage" runat="server" OnClick="NextPage_Click">下一页</asp:LinkButton></span>
<span ><asp:LinkButton ID="LastPage" runat="server" OnClick="LastPage_Click">末页</asp:LinkButton></span>
<input type="text" id="gotxt" runat="server" style="width:30px;" />
<span><asp:LinkButton ID="GoPage" runat="server" OnClick="GoPage_Click">Go</asp:LinkButton></span>
<span class="pagenum">第<asp:Label ID="PageIndex" runat="server" Text="1" CssClass="pagenum"></asp:Label>页</span>
<span class="pagenum">共<asp:Label ID="PageNum" runat="server" Text="1" CssClass="pagenum"></asp:Label>页</span>
</div>
后台代码:
using MTMall.BLL;
using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace MTMall.Web.Improvement
{
public partial class Designs : System.Web.UI.Page
{
private ImprovementDesignsManager designBLL = new ImprovementDesignsManager();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//分页绑定
PageIndex.Text = "1";
bind();
}
}
/// <summary>
/// 绑定分页
/// </summary>
public void bind()
{
int recordCount = designBLL.GetDesifnCount();
RepList.DataSource = designBLL.GetDesigns( Convert.ToInt32(PageIndex.Text) - 1); //绑定RepMyOrder
RepList.DataBind();
int pageCount = recordCount % 20 == 0 ? recordCount / 20 : recordCount / 20 + 1;//总页数
PageNum.Text = pageCount.ToString();
int crrentPage = Convert.ToInt32(PageIndex.Text); //当前页
//判断按钮可用
if (Convert.ToInt32(PageNum.Text) <= 1)
{
FirstPage.Enabled = false;
BackPage.Enabled = false;
NextPage.Enabled = false;
LastPage.Enabled = false;
}
else if (crrentPage == 1 && Convert.ToInt32(PageNum.Text) > 1)
{
FirstPage.Enabled = false;
BackPage.Enabled = false;
NextPage.Enabled = true;
LastPage.Enabled = true;
}
else if (crrentPage == pageCount && Convert.ToInt32(PageNum.Text) > 1)
{
FirstPage.Enabled = true;
BackPage.Enabled = true;
NextPage.Enabled = false;
LastPage.Enabled = false;
}
else
{
FirstPage.Enabled = true;
BackPage.Enabled = true;
NextPage.Enabled = true;
LastPage.Enabled = true;
}
}
/// <summary>
/// 首页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void FirstPage_Click(object sender, EventArgs e)
{
PageIndex.Text = "1";
bind();
}
/// <summary>
/// 上一页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void BackPage_Click(object sender, EventArgs e)
{
PageIndex.Text = (Convert.ToInt32(PageIndex.Text) - 1).ToString();
bind();
}
/// <summary>
/// 下一页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void NextPage_Click(object sender, EventArgs e)
{
PageIndex.Text = (Convert.ToInt32(PageIndex.Text) + 1).ToString();
bind();
}
/// <summary>
/// 末页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void LastPage_Click(object sender, EventArgs e)
{
PageIndex.Text = PageNum.Text;
bind();
}
/// <summary>
/// 跳转指定页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void GoPage_Click(object sender, EventArgs e)
{
if (Regex.IsMatch(gotxt.Value, "^[0-9]+$"))
{
int gonum = Convert.ToInt32(gotxt.Value);
if (gonum > 0 && gonum <= Convert.ToInt32(PageNum.Text))
{
PageIndex.Text = gonum.ToString();
bind();
}
else
{
Page.ClientScript.RegisterClientScriptBlock(GetType(), "myscipt", "<script>alert('找不到该页,请确认输入页面是否存在?');</script>");
}
}
else
{
Page.ClientScript.RegisterClientScriptBlock(GetType(), "myscipt", "<script>alert('请输入数字!');</script>");
}
}
}
}