GridView 分页 上一页 下一页 跳转

效果图:

前端页面

  <form id="form1" runat="server">
    <div>
             <asp:GridView ID="GridView1" runat="server" AllowPaging="True"  AutoGenerateColumns="False">
           <Columns>
               <asp:BoundField DataField="Typeid" HeaderText="编号" />
               <asp:BoundField DataField="TypeName" HeaderText="类型名称" />
               <asp:BoundField DataField="Upid" HeaderText="父Id" />
               <asp:BoundField DataField="Memo" HeaderText="备注" />
           </Columns>

            <PagerTemplate>
                <table  style="font:11px Tahoma; background-color:#cfe3fb;">
                    <tr>
                    <td style="text-align: right;">
                        第<asp:Label ID="lblPageIndex" runat="server" Text=‘<%# ((GridView)Container.Parent.Parent).PageIndex + 1 %>‘></asp:Label>页
                        / 共<asp:Label ID="lblPageCount" runat="server" Text=‘<%# ((GridView)Container.Parent.Parent).PageCount %>‘></asp:Label>页&nbsp;&nbsp;
                        <asp:LinkButton ID="btnFirst" runat="server" CausesValidation="False"
                            CommandName="Page" Text="首页" CommandArgument="first" OnClick="btnFirst_Click">
                        </asp:LinkButton>
                        <asp:LinkButton ID="btnPrev" runat="server" CausesValidation="False"
                            CommandName="Page" Text="上一页" CommandArgument="prev" onclick="btnFirst_Click">
                        </asp:LinkButton>
                        <asp:LinkButton ID="btnNext" runat="server" CausesValidation="False"
                            CommandName="Page" Text="下一页" CommandArgument="next" OnClick="btnFirst_Click">
                        </asp:LinkButton>
                        <asp:LinkButton ID="btnLast" runat="server" CausesValidation="False"
                            CommandName="Page" Text="尾页" CommandArgument="last" OnClick="btnFirst_Click">
                        </asp:LinkButton>
                        <asp:TextBox ID="txtNewPageIndex" runat="server" MaxLength="5" CssClass="inputBorder1" Text=‘<%# ((GridView)Container.Parent.Parent).PageIndex + 1 %>‘
                            onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,‘‘)}else{this.value=this.value.replace(/\D/g,‘‘)}" onafterpaste="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,‘‘)}else{this.value=this.value.replace(/\D/g,‘‘)}" AutoPostBack="True" ></asp:TextBox>
                        <asp:LinkButton ID="btnGo" runat="server" CausesValidation="False" CommandArgument="go"
                            CommandName="Page" Text="GO" OnClick="btnFirst_Click"></asp:LinkButton>
                    </td>
                    </tr>
                </table>
            </PagerTemplate>

        </asp:GridView>
    </div>
    </form>

后台代码

  public partial class Default : System.Web.UI.Page
    {
        SqlConnection connect;
        SqlCommand cmd;
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                bind();
            }

        }
        protected void btnFirst_Click(object sender, EventArgs e)
        {
            string str = ((LinkButton)sender).CommandArgument.ToString();
            if (str != null)
            {
                if (!(str == "first"))
                {
                    if (str == "last")
                    {
                        this.GridView1.PageIndex = this.GridView1.PageCount - 1;
                    }
                    else if (str == "prev")
                    {
                        if (this.GridView1.PageIndex >= 1)
                        {
                            this.GridView1.PageIndex--;
                        }
                        else
                        {
                            this.GridView1.PageIndex = 0;
                        }
                    }
                    else if (str == "next")
                    {
                        this.GridView1.PageIndex++;
                    }
                    else if (str == "go")
                    {
                        TextBox box = (TextBox)this.GridView1.BottomPagerRow.FindControl("txtNewPageIndex");
                        int num = Convert.ToInt32(box.Text.ToString());
                        this.GridView1.PageIndex = num - 1;
                    }
                }
                else
                {
                    this.GridView1.PageIndex = 0;
                }
            }
            this.bind();
        }
            /// <summary>
        /// 绑定数据
        /// </summary>
        /// <returns></returns>
        public void bind()
        {

            connect = new SqlConnection("server=.;database=SuperMarket;uid=sa;pwd=123");
            cmd = new SqlCommand();
            string sql = "select * from dbo.GoodsTypes";
            cmd.CommandText = sql;
            cmd.Connection = connect;

            connect.Open();

            SqlDataAdapter da = new SqlDataAdapter(cmd);
            DataSet ds = new DataSet();
            da.Fill(ds);

            GridView1.DataKeyNames = new string[] { "typeid" };//主键
            GridView1.DataSource = ds;
            GridView1.DataBind();

        }
    }

ps: 点击 go 之后为什么不跳转第二页,页面刷新了一下,记住加载事件里要加

if (!IsPostBack)
            {
                bind();
            }
时间: 2024-11-06 17:52:02

GridView 分页 上一页 下一页 跳转的相关文章

css -- 映像 ,分页(上一页下一页)

1.映像:-webkit-box-reflect:blow 2px -webkit-gradient( linear, left top, left bottom, from(transparent), color-stop(0.52,transprent), to(white)); 2.对于页码的上一页以及下一页:prev以及next ---- rel属性 设置样式ol.pagination a[rel="prev"], ol.pagination a[rel="next&

C# Winform学习---MDI窗体的设计,PictureBox控件(图片上一页下一页),Timer控件,MenuStrip控件

一.MDI窗体的设计 1.MDI简介 MDI(Multiple Document Interface)就是所谓的多文档界面,与此对应就有单文档界面 (SDI), 它是微软公司从Windows 2.0下的Microsoft Excel电子表格程序开始引入的,Excel电子表格用户有时需要同时操作多份表格,MDI正好为这种操作多表格提供了很大的方便,于是就产生了MDI程序 2.效果图: 如下图所示,多窗体嵌套,其中一个是父窗体,其条是子窗体. 横向排列下面的窗体: 纵向排列下面的窗体: 关闭全部子窗

织梦只调用上一页下一页链接不要其他

//打开织梦系统文件 /include/arc.archives.class.php 找到GetPreNext函数 function GetPreNext($gtype='') { $rs = ''; if(count($this->PreNext)<2) { $aid = $this->ArcID; $preR = $this->dsql->GetOne("Select id From `#@__arctiny` where id<$aid And arcr

Unity上一页下一页切换功能实现源码(仅供参考)

在做项目时我们有时需要实现切换上一页下一页图片,切换上一首下一首歌曲等等类似的功能.这里写了个简单的实现源码(仅供参考),要是有更好的方法欢迎提出来,共同进步~ 以切换上一页下一页图片为例: using UnityEngine; using System.Collections; using UnityEngine.UI; public class PanoramaManager : MonoBehaviour { //图片存放数组 Texture2D[] arr; //下一张按钮计数索引 in

解决Mysql 主键id是UUID的上一页下一页数据翻页,附带SQL

解决id为UUID的上一页下一页数据翻页,把base_course_timetable表换成自己的表就可以了 SELECTbef.* FROM(SELECTt.rownum,t.id FROM( SELECT @rownum := @rownum + 1 AS rownum, base_course_timetable.* FROM ( SELECT @rownum := 0 ) r, base_course_timetable ) t WHEREt.rownum < (SELECTw.rown

ASP.NET MVC中使用MvcPager异步分页+在分页中复选框下一页上一页也保持选中

ASP.NET MVC 分页使用的是作者杨涛的MvcPager分页控件  地址:http://www.webdiyer.com/mvcpager/demos/ajaxpaging/ 这个分页控件在里面有很好的的案例,及注意事项 分页在我们的项目中是经常需要使用到的,普通分页体验是在是太差了,每一次点击下一步,会造成页面刷新,自己都看不过去了 ,O(∩_∩)O哈哈~ 所以这次我们要使用这个控件在做一个MvcPager的异步分页,分页的时候我们只刷新表格,而不是刷新页面 下面我们开始吧 一.分页 首

织梦栏目列表页分页条获取上一页下一页链接

标签说明 支持动态/静态/伪静态 支持电脑站/手机站 不改动程序文件 上一页 <a href="{dede:pagelist listitem=pre runphp=yes}preg_match_all('/href=['"]([^(}>)]+)['"]/', @me, $reselt);@me = $reselt[1][0];{/dede:pagelist}">上一页</a> 下一页 <a href="{dede:pa

Android ListView上拉获取下一页

关于ListView上拉刷新的需求很多,实现方式也多种多样. 一般是简单的通过一个page变量来控制当前请求的页数,然后上拉的时候就发送请求. 实现出来后,经过测试哥的折腾,发现有诸多细节没有处理好,比如会出现重复数据,反复的上拉导致多次请求等bug. 后来就决定单独写一个工具类,方便以后需要直接使用. 1 public class ListViewScrollHelper<T> { 2 private static final String TAG = "ListViewScrol

上一页 下一页

sessionStorage.removeItem('times'); var ding_pageSize = 10;//切换每页显示条数 function exportExcle(url){ $.ajax({ 'type':'get', 'url':url, "dataType":'json', "data":{ }, "traditional" : true, success:function(myData){ // myData = JSO