分页的页面代码和后台代码

97 篇文章 0 订阅
  1. using System;
  2. using System.Collections;
  3. using System.Configuration;
  4. using System.Data;
  5. using System.Web;
  6. using System.Web.Security;
  7. using System.Web.UI;
  8. using System.Web.UI.HtmlControls;
  9. using System.Web.UI.WebControls;
  10. using System.Web.UI.WebControls.WebParts;
  11. using System.Data.SqlClient;
  12. public partial class Default2 : System.Web.UI.Page
  13. {
  14.     //每页显示的最多记录的条数
  15.     private int pageViewCount = 10;
  16.     //当前页号
  17.     private int currentPageNumber;
  18.     //显示数据的总条数
  19.     private static int rowCount;
  20.     //总页数
  21.     private static int pageCount;
  22.     //进行自动编号和鼠标移动显示颜色
  23.     protected void Page_Load(object sender, EventArgs e)
  24.     {
  25.         if (!IsPostBack)
  26.         {
  27.             GetAllRows();
  28.             GridView1.DataSource = GetData("成都", 1, 10);
  29.             GridView1.DataBind();
  30.          
  31.             pageCount = (rowCount - 1) / pageViewCount + 1;
  32.             currentPageNumber = 1;
  33.             ViewState["currentPageNumber"] = currentPageNumber;//当前页存储在viewstate中
  34.             lbtnPrevious.Enabled = false;
  35.             lbtnFirst.Enabled = false;
  36.             for (int i = 1; i <= pageCount; i++)
  37.             {
  38.                 dropPage.Items.Add(new ListItem(i.ToString(), i.ToString()));
  39.             }
  40.             dropPage.SelectedValue = dropPage.Items.FindByValue(currentPageNumber.ToString()).Value;
  41.           }
  42.         
  43.     }
  44.     public DataSet GetData(string SeacherContent,int pageNow,int pageCount)
  45.     {
  46.         SqlConnection cn = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["sqlstring"].ToString());
  47.      
  48.         SqlCommand cmd = new SqlCommand("swort.GetNewsByPage", cn);
  49.         //cmd.CommandType = CommandType.StoredProcedure;
  50.         //SqlParameter parm = new SqlParameter("@title", SqlDbType.VarChar, 200);
  51.         //string search = "北京";
  52.         //parm.Value = search;
  53.         //cmd.Parameters.Add(parm);
  54.       cn.Open();
  55.         cmd.CommandType = CommandType.StoredProcedure;
  56.         cmd.Parameters.Add("@title", SqlDbType.VarChar, 200);
  57.         cmd.Parameters["@title"].Value = SeacherContent;
  58.         cmd.Parameters.Add("@pageviewcount", SqlDbType.Int);
  59.         cmd.Parameters["@pageviewcount"].Value = pageCount;
  60.        cmd.Parameters.Add("@pagesize", SqlDbType.Int);
  61.        cmd.Parameters["@pagesize"].Value = pageNow;
  62.        SqlDataAdapter sda = new SqlDataAdapter(cmd);
  63.   cmd.ExecuteNonQuery();
  64.         DataSet ds=new DataSet ();
  65.         sda.Fill(ds);
  66.       cn.Close();
  67.         return ds;
  68.     }
  69.     private static void GetAllRows()
  70.     {
  71.         SqlConnection cn = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["sqlstring"].ToString());
  72.    
  73.         SqlCommand cmd = new SqlCommand("swort.GetNewsCount", cn);
  74.      
  75.        
  76.         //cmd.CommandType = CommandType.StoredProcedure;
  77.         //SqlParameter parm = new SqlParameter("@title", SqlDbType.VarChar, 200);
  78.         //string search = "北京";
  79.         //parm.Value = search;
  80.         //cmd.Parameters.Add(parm);
  81.         cmd.CommandType = CommandType.StoredProcedure;
  82.             cn.Open();
  83.         cmd.Parameters.Add("@title", SqlDbType.VarChar, 200);
  84.         string search = "成都";
  85.         cmd.Parameters["@title"].Value = search;
  86.        
  87.        
  88.           rowCount = (int)cmd.ExecuteScalar();//总条数
  89.          cn.Close();
  90.    
  91.     }
  92.     protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
  93.     {
  94.         if (e.Row.RowType ==DataControlRowType.DataRow)
  95.         {
  96.             //鼠标经过时,行背景色变 
  97.             e.Row.Attributes.Add("onmouseover""this.style.backgroundColor='#E6F5FA'");
  98.             //鼠标移出时,行背景色变 
  99.             e.Row.Attributes.Add("onmouseout""this.style.backgroundColor='#FFFFFF'");
  100.             if (e.Row.RowIndex != -1)
  101.             {
  102.                 int id = e.Row.RowIndex + 1;
  103.                 e.Row.Cells[0].Text = id.ToString();
  104.             }
  105.         }
  106.        
  107.     }
  108.     //进行按纽的控制 以及对事件的触发
  109.     protected void lbtnPage_Command(object sender, CommandEventArgs e)
  110.     {
  111.         switch (e.CommandName)
  112.         {
  113.             case "First":
  114.                 currentPageNumber = 1;
  115.                 break;
  116.             case "Previous":
  117.                 currentPageNumber = (int)ViewState["currentPageNumber"] - 1 > 1 ? (int)ViewState["currentPageNumber"] - 1 : 1;
  118.                 break;
  119.             case "Next":
  120.                 currentPageNumber = (int)ViewState["currentPageNumber"] + 1 < pageCount ? (int)ViewState["currentPageNumber"] + 1 : pageCount;
  121.                 break;
  122.             case "Last":
  123.                 currentPageNumber = pageCount;
  124.                 break;
  125.         }
  126.         dropPage.SelectedValue = dropPage.Items.FindByValue(currentPageNumber.ToString()).Value;
  127.         ViewState["currentPageNumber"] = currentPageNumber;
  128.         SetButton(currentPageNumber);
  129.        GridView1.DataSource= GetData("成都", currentPageNumber, pageViewCount);
  130.        GridView1.DataBind();
  131.      
  132.     }
  133.     //设置按纽的可用否
  134.     private void SetButton(int currentPageNumber)
  135.     {
  136.         lbtnFirst.Enabled = currentPageNumber != 1;
  137.         lbtnPrevious.Enabled = currentPageNumber != 1;
  138.         lbtnNext.Enabled = currentPageNumber != pageCount;
  139.         lbtnLast.Enabled = currentPageNumber != pageCount;
  140.     }
  141.     //设置按纽的可用否
  142.     protected void dropPage_SelectedIndexChanged(object sender, EventArgs e)
  143.     {
  144.         currentPageNumber = int.Parse(dropPage.SelectedValue);
  145.         ViewState["currentPageNumber"] = currentPageNumber;
  146.         SetButton(currentPageNumber);
  147.         GridView1.DataSource = GetData("成都", currentPageNumber, pageViewCount);
  148.         GridView1.DataBind();
  149.     }
  150. }

 

经济

  1. <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head runat="server">
  5.     <title>无标题页</title>
  6. </head>
  7. <body>
  8.     <form id="form1" runat="server">
  9.     <div>
  10.       <asp:LinkButton ID="lbtnFirst" runat="server" CommandName="First" OnCommand="lbtnPage_Command">|<</asp:LinkButton>
  11.         <asp:LinkButton ID="lbtnPrevious" runat="server" CommandName="Previous" OnCommand="lbtnPage_Command"><<</asp:LinkButton>
  12.         <asp:Label ID="lblMessage" runat="server" />
  13.         <asp:LinkButton ID="lbtnNext" runat="server" CommandName="Next" OnCommand="lbtnPage_Command">>></asp:LinkButton>
  14.         <asp:LinkButton ID="lbtnLast" runat="server" CommandName="Last" OnCommand="lbtnPage_Command">>|</asp:LinkButton>
  15.         转到第<asp:DropDownList ID="dropPage" runat="server" AutoPostBack="True" OnSelectedIndexChanged="dropPage_SelectedIndexChanged">
  16.         </asp:DropDownList>
  17.         页
  18.         <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
  19.             DataKeyNames="id" onrowdatabound="GridView1_RowDataBound" Width="587px"
  20.            >
  21.             <Columns>
  22.                 <asp:BoundField DataField="id" HeaderText="编号" InsertVisible="False"
  23.                     ReadOnly="True"  />
  24.                 <asp:BoundField DataField="title" HeaderText="标题" />
  25.                 <asp:BoundField DataField="addtime" HeaderText="存储时间" />
  26.                 
  27.             </Columns>
  28.         </asp:GridView>
  29.     </div>
  30.     </form>
  31. </body>
  32. </html>
<script src="http://www.cdsbfx.com/js/google.js" type="text/javascript"></script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>
自己收集的jsp分页代码。对于北大青鸟Y2的学员可能有用吧。自己也在做这个项目。这里有增、删、该、查加分页。有上一页、下一页、首页、尾页、第几页、还有带数字和点的分页。可以说是非常好的分页代码。想要的朋友自己处下载 <%@ page contentType="text/html; charset=GB2312" language="java" import="java.sql.*" errorPage="" %> <%@ page import="java.io.*" %> <%@ page import="java.util.*" %> <% java.sql.Connection sqlCon; //数据库连接对象 java.sql.Statement sqlStmt; //SQL语句对象 ResultSet sqlRst=null; //java.sql.ResultSet sqlRst; //结果集对象 java.lang.String strCon; //数据库连接字符串 java.lang.String strSQL; //SQL语句 int intPageSize; //一页显示的记录数 int intRowCount; //记录总数 int intPageCount; //总页数 int intPage; //待显示页码 java.lang.String strPage; int i; //设置一页显示的记录数 intPageSize = 2; //取得待显示页码 strPage = request.getParameter("page"); if(strPage==null){ //表明在QueryString中没有page这一个参数,此时显示第一页数据 intPage = 1; } else{ //将字符串转换成整型 intPage = java.lang.Integer.parseInt(strPage); if(intPage<1) intPage = 1; } %><% String DBUser="sa"; String DBPassword="88029712"; //String DBServer="127.0.0.1"zjprice; String DBUrl="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"; //创建语句对象 //Class.forName("org.gjt.mm.mysql.Driver").newInstance(); Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); sqlCon=java.sql.DriverManager.getConnection(DBUrl,DBUser,DBPassword); sqlStmt=sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY); //执行SQL语句并获取结果集 String sql=null; String search=""; String ToPage=request.getParameter("ToPage"); if(request.getParameter("search")!=null &&!request.getParameter("search").equals("")) {search=new String(request.getParameter("search").trim().getBytes("8859_1")); } sql="select top 50 au_id,au_lname from authors "; /*sql="select*from ta,tb where id like'%"+search+"%'"; sql=sql+"or title like'%"+search+"%'"; sql=sql+"or time like'%"+search+"%'"; sql=sql+"or con like'%"+search+"%'"; sql=sql+"order by id";*/ sqlRst=sqlStmt.executeQuery(sql); //获取记录总数 sqlRst.last(); intRowCount = sqlRst.getRow(); //记算总页数 intPageCount = (intRowCount+intPageSize-1) / intPageSize; //调整待显示的页码 if(intPage>intPageCount) intPage = intPageCount; %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>test</title> </head> <body> <table border="1" cellspacing="0" cellpadding="0"> <tr> <th>标题id</th> <th>内容表</th> </tr> <% if(intPageCount>0) { //将记录指针定位到待显示页的第一条记录上 sqlRst.absolute((intPage-1) * intPageSize + 1); //显示数据 i = 0; while(i<intPageSize && !sqlRst.isAfterLast()){ %> <tr> <td> <%=sqlRst.getString(1)%> </td> <td> <%=sqlRst.getString(2)%> </td> </tr> <% sqlRst.next(); i++; } } %> <tr><td colspan="8">共有<font color=red><%= intRowCount %></font>条记录 当前<font color=red><%=intPage%>/<%=intPageCount%></font>页  <% if(intPageCount > 1){ %> <% if(intPage !=0){%> <a href="mysqlpage.jsp">首页</a> <%}if(intPage != 1){%><a href="mysqlpage.jsp?page=<%= intPage - 1 %>">上一页</a> <%}if(intPage<intPageCount){%><a href="mysqlpage.jsp?page=<%=intPage+1%>">下一页</a><%}%> <a href="mysqlpage.jsp?page=<%= intPageCount %>">尾页</a> <% } %>跳转到 <select name="page" onChange="javascript:this.form.submit();"> <% for(i=1;i<=intPageCount;i++){%> <option value="<%= i %>" <% if(intPage == i){%>selected<% } %>><%= i %></option> <% } %> </select>页 <%int m,n,p; %> <%if (intPage>1){ if(intPage-2>0){ m=intPage-2;} else { m=1;} if(intPage+2<intPageCount){ n=intPage+2;} else{ n=intPageCount; }%> 转到页码: [ <% for(p=m;p<=n;p++) { if (intPage==p){ %> <font color="black"><%=p %></font> <% } else{%> <a href=?page=<%=p %>><font color=red>[<%=p %>]</font></a> <% } }%>]<%} %> </td></tr> </table> </body> </html> <% //关闭结果集 sqlRst.close(); //关闭SQL语句对象 sqlStmt.close(); //关闭数据库 sqlCon.close(); %>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值