.aspx代码:
<script type="text/javascript">
function isUnsignedInteger() {
var strInteger=document.getElementById("txtPage").value;
var newPar=/^/d+$/
if(!newPar.test(strInteger))
{
alert("请输入正确的页数");
return false;
}
else
return true;
}
</script>
<asp:GridView ID="gvProject" runat="server" AutoGenerateColumns="False" AllowSorting="True" >
...............
</asp:GridView>
<table id="pagenum" visible="false" runat="server" width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center" style="height: 22px">
<asp:Label ID="lblCurrentPage" runat="server" Text=""></asp:Label>
<asp:HyperLink ID="lnkIndex" runat="server" Font-Overline="false">首页</asp:HyperLink>
<asp:HyperLink ID="lnkPrev" runat="server" Font-Overline="false">上一页</asp:HyperLink>
<asp:HyperLink ID="lnkNext" runat="server" Font-Overline="false">下一页</asp:HyperLink>
<asp:HyperLink ID="lnkLast" runat="server" Font-Overline="false">尾页</asp:HyperLink>
<input id="txtPage" runat="server" style="width: 25px; height: 15px"/>
<asp:Button ID="btnGo" runat="server" Text="GO" Width="28px" Height="20px" OnClick="btnGo_Click" OnClientClick="return isUnsignedInteger()"/>
</td>
</tr>
</table>
.aspx.cs代码:
IList<Project_Master> pm = Project_MasterManager.GetAllProject_Masters();
PagedDataSource pds = new PagedDataSource();
int CurPage = 0;
pds.DataSource = pm;
pds.PageSize = 10;
pds.AllowPaging = true;
if (pm.Count > 10)
this.pagenum.Visible = true;//翻页显示
if (Request.QueryString["Page"] != null)
{
CurPage = Convert.ToInt32(Request.QueryString["Page"]);
if (Convert.ToInt32(Request.QueryString["Page"]) > pds.PageCount)
{
CurPage = pds.PageCount;
}
else if (Convert.ToInt32(Request.QueryString["Page"]) == 0)
{
CurPage = 1;
}
}
else
CurPage = 1;
pds.CurrentPageIndex = CurPage - 1;
lblCurrentPage.Text = CurPage.ToString() + "/" + pds.PageCount + "页";
if (!pds.IsFirstPage)
{
lnkPrev.NavigateUrl = Request.CurrentExecutionFilePath + "?FileId=" + pm[0].Id+ "&Page=" + Convert.ToString(CurPage - 1);
lnkIndex.NavigateUrl = Request.CurrentExecutionFilePath + "?FileId=" + pm[0].Id+ "&Page=1";
}
if (!pds.IsLastPage)
{
lnkNext.NavigateUrl = Request.CurrentExecutionFilePath + "?FileId=" + pm[0].Id+ "&Page=" + Convert.ToString(CurPage + 1);
lnkLast.NavigateUrl = Request.CurrentExecutionFilePath + "?FileId=" + pm[0].Id+ "&Page=" + pds.PageCount.ToString();
}
this.gvProject.DataSource = pds;
this.gvProject.DataBind();
}
//go 跳到第几页
protected void btnGo_Click(object sender, EventArgs e)
{
string numpage = this.txtPage.Value.ToString();
Response.Redirect("ProjectMaster.aspx?page=" + numpage);
}