zoukankan      html  css  js  c++  java
  • 分页

    前台

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
    
    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server">
            <table style=" 100%; text-align: center; background-color: navy;">
                <tr style="color: white;">
                    <td>Ids</td>
                    <td>名称</td>
                    <td>油耗</td>
                    <td>马力</td>
                    <td>排量</td>
                    <td>价格</td>
                </tr>
                <asp:Repeater ID="Repeater1" runat="server">
                    <ItemTemplate>
                        <tr style="background-color: white;">
                            <td><%#Eval("Ids") %></td>
                            <td><%#Eval("Name") %></td>
                            <td><%#Eval("Oil") %></td>
                            <td><%#Eval("Powers") %></td>
                            <td><%#Eval("Exhaust") %></td>
                            <td><%#Eval("Price") %></td>
                        </tr>
                    </ItemTemplate>
                </asp:Repeater>
            </table>
            <div style=" 100%; text-align: center; line-height: 30px;">
                当前第[
                <asp:Label ID="lab_NowPageNumber" runat="server" Text="1"></asp:Label>
                ]页
                &nbsp;&nbsp;共[
                <asp:Label ID="lab_MaxPageNumber" runat="server" Text="1"></asp:Label>
                ]页<br />
                <asp:Button ID="btn_First" runat="server" Text="首页" />
                <asp:Button ID="btn_Prev" runat="server" Text="上一页" />
                <asp:Button ID="btn_Next" runat="server" Text="下一页" />
                <asp:Button ID="btn_Last" runat="server" Text="尾页" />
                <asp:DropDownList ID="dr_drop" AutoPostBack="true" runat="server"></asp:DropDownList>
                <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                <asp:Button ID="Button1" runat="server" Text="跳转" />
            </div>
    
    
    
    
        </form>
    </body>
    </html>

    右键代码

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    
    public partial class _Default : System.Web.UI.Page
    {
        int PageCount = 5;//全局变量  默认每页显示5条数据
        protected void Page_Load(object sender, EventArgs e)
        {
            btn_Last.Click += btn_Last_Click;//尾页
            btn_Next.Click += btn_Next_Click;//下一页
            btn_Prev.Click += btn_Prev_Click;//上一页
            btn_First.Click += btn_First_Click;//首页
            Button1.Click += Button1_Click;//跳转
    
            //下拉菜单点第几页显示当页的数据
            dr_drop.SelectedIndexChanged += dr_drop_SelectedIndexChanged;
            #region 网页第一次加载
            if (!IsPostBack)
            {
                Repeater1.DataSource = new CarData().Select(1, PageCount);//第一页显示5条数据
                Repeater1.DataBind();//绑定数据库
                lab_MaxPageNumber.Text = getMaxNumber().ToString();//最大页数
                btn_First.Enabled = false;//首页按钮不能用
                btn_Prev.Enabled = false;//上一页不能用
                //下拉菜单绑定页数
                for (int i = 1; i <= Convert.ToInt32(lab_MaxPageNumber.Text); i++)
                {
                    dr_drop.Items.Add(new ListItem(i.ToString(), i.ToString()));
                }
    
            }
            #endregion
        }
    
        void Button1_Click(object sender, EventArgs e)
        {
            int a = Convert.ToInt32(TextBox1.Text);
            PageDataBind(a);
        }
        #region 下拉菜单点第几页显示第几页数据
        void dr_drop_SelectedIndexChanged(object sender, EventArgs e)
        {
            int a = Convert.ToInt32(dr_drop.SelectedValue);
            PageDataBind(a);//不刷新页面属性加AutopostBack=“true”
        }
        #endregion
        #region 获得最大页数
        public int getMaxNumber()
        {
            int end = 1;//一条数据都没有显示第一页
            #region(数据总条数/每页显示条数 5)取上限
            int allCount = new CarData().SelectAll().Count;//数据总条数
            decimal a = Convert.ToDecimal(allCount) / PageCount;//数据总条数/每页显示条数 数据总条数(allCount) 和每页显示条数( PageCount)都是int类型数据不准确要用decimal类型  只要有一个转换成decimal就行
            end = Convert.ToInt32(Math.Ceiling(a));//取a的上限  a是decima类型装换成int类型
            #endregion
            return end;
        }
        #endregion
        #region 首页
        void btn_First_Click(object sender, EventArgs e)
        {
            int a = 1;
            PageDataBind(a);
            btn_First.Enabled = false;
            btn_Prev.Enabled = false;
            btn_Next.Enabled = true;
            btn_Last.Enabled = true;
        }
        #endregion
        #region 上一页
        void btn_Prev_Click(object sender, EventArgs e)
        {
            int a = Convert.ToInt32(lab_NowPageNumber.Text) - 1;
            //当前页数大于0的时候能看
            if (a > 0)
            {
                PageDataBind(a);
            }
            if (a == 1)//当前页数等于1
            {
                btn_First.Enabled = false;//首页按钮不可用
                btn_Prev.Enabled = false;//上一页不可用
            }
            btn_Next.Enabled = true;//下一页可用
            btn_Last.Enabled = true;//尾页可用
        }
        #endregion
        #region 下一页
        void btn_Next_Click(object sender, EventArgs e)
        {
            //获取当前页(lab_NowPageNumber.Text)  然后+1变成用户看的页数
            int a = Convert.ToInt32(lab_NowPageNumber.Text) + 1;
            //当前页数小于等于最大页数能看
            if (a <= Convert.ToInt32(lab_MaxPageNumber.Text))
            {
                PageDataBind(a);
            }
            btn_First.Enabled = true;
            btn_Prev.Enabled = true;
            if (a == Convert.ToInt32(lab_MaxPageNumber.Text))//当前页数等于最大页数
            {
                btn_Next.Enabled = false;//下一页不可用
                btn_Last.Enabled = false;//尾页不可用
            }
    
        }
        #endregion
        #region  尾页
        void btn_Last_Click(object sender, EventArgs e)
        {
            int a = Convert.ToInt32(lab_MaxPageNumber.Text);
            PageDataBind(a);
            btn_Next.Enabled = false;
            btn_Last.Enabled = false;
            btn_First.Enabled = true;
            btn_Prev.Enabled = true;
        }
        #endregion
    
        public void PageDataBind(int a)
        {
            Repeater1.DataSource = new CarData().Select(a, PageCount);
            Repeater1.DataBind();
            lab_NowPageNumber.Text = a.ToString();//显示下一页
        }
    
    }

    UsersData

    using System;
    using System.Collections.Generic;
    using System.Data.SqlClient;
    using System.Linq;
    using System.Web;
    
    /// <summary>
    /// CarData 的摘要说明
    /// </summary>
    public class CarData
    {
        SqlConnection conn = null;
        SqlCommand cmd = null;
        public CarData()
        {
            conn = new SqlConnection("server=.;database=mydb;user=sa;pwd=123");
            cmd = conn.CreateCommand();
        }
    
        public List<Car> SelectAll()
        {
            List<Car> clist = new List<Car>();
            cmd.CommandText = "select *from car";
            conn.Open();
            SqlDataReader dr = cmd.ExecuteReader();
            while (dr.Read())
            {
                Car c = new Car();
                c.Ids = Convert.ToInt32(dr["Ids"]);
                c.Name = dr["Name"].ToString();
                c.Oil = Convert.ToDecimal(dr["Oil"]);
                c.Powers = Convert.ToDecimal(dr["Powers"]);
                c.Exhaust = Convert.ToDecimal(dr["Exhaust"]);
                c.Price = Convert.ToDecimal(dr["Price"]);
                clist.Add(c);
            }
            conn.Close();
            return clist;
        }
        #region 分页查询数据
        public List<Car> Select(int NowNumber, int Count)//NowNumber当前要看的页数  Count当前页数要显示的数据
        {
            List<Car> clist = new List<Car>();
    
            cmd.CommandText = "select top " + Count + " *from car where ids not in(select top " + ((NowNumber - 1) * Count) + " ids from car)";
    
            conn.Open();
            SqlDataReader dr = cmd.ExecuteReader();
            while (dr.Read())
            {
                Car c = new Car();
                c.Ids = Convert.ToInt32(dr["Ids"]);
                c.Name = dr["Name"].ToString();
                c.Oil = Convert.ToDecimal(dr["Oil"]);
                c.Powers = Convert.ToDecimal(dr["Powers"]);
                c.Exhaust = Convert.ToDecimal(dr["Exhaust"]);
                c.Price = Convert.ToDecimal(dr["Price"]);
                clist.Add(c);
            }
            conn.Close();
            return clist;
        }
        #endregion
    
    }
  • 相关阅读:
    json学习笔记
    尾调用学习
    t分布, 卡方x分布,F分布
    第三章 概率 与 概率分布
    二项分布&超几何分布
    第二章 试验资料的整理与特征数的计算
    第一章 常用统计学术语
    python 网络编程 TCP/IP socket UDP
    Python3 标准库概览
    python 输入输出,file, os模块
  • 原文地址:https://www.cnblogs.com/skyhorseyk/p/7338499.html
Copyright © 2011-2022 走看看