手写分页

<tr>
                <td>
                    <input type="button" value="|<" onclick="first()" />
                    <input type="button" value="<<" onclick="prev()" />
                    <input type="text" value="1" id="PageIndex" />
                    <input type="button" value=">>" onclick="next()" />
                    <input type="button" value=">|" onclick="last()" />
                </td>
            </tr>

这是手写分页前台代码

点击空间之后获取onclick事件,调用ajax请求后台

 $(function () {
        GetData();
    })
    var MaxPagerCount = 1;
    function GetData() {
        var pageIndex = $("#PageIndex").val();
        $.ajax({
            url: ‘/Default1/Show‘,
            type: ‘get‘,
            data: { pageindex: pageIndex},
            dataType: ‘json‘,
            success: function (data) {
                $("#aaa").empty();
                MaxPagerCount = data.PageCount;
                $(data).each(function () {
                    $("#aaa").append("<tr><td>" + this.ID + "</td><td>" + this.Name + "</td></tr>");
                })
            }
        })
    }

页面首次加载,请求后台查询数据库,返回查询到的数据进行绑定

 public ActionResult Index()
        {
            return View();
        }
        int PageCount = 0;
        [HttpGet]
        public List<dsdf> Show(int pageindex=1)
        {
            string str = "select * from Address";
            DataTable dt = DBHelper.GetTable(str);
            List<Stu> s =JsonConvert.DeserializeObject<List<Stu>>(JsonConvert.SerializeObject(dt));
            var linq = (from a in s
                       select a).Skip((pageindex - 1) * 5).Take(5);
            if (linq.Count() % 5 == 0)
            {
                 PageCount = linq.Count() / 5;
            }
            else {
                 PageCount = linq.Count() / 5+1;
            }
            dsdf df = new dsdf();
            df.PageCount = PageCount;
            return JsonConvert.DeserializeObject<List<dsdf>>(JsonConvert.SerializeObject(linq));

        }

首次加载后台代码

把查询到的数据用Linq语句进行分页

Skip是跳过多少条,Take是从你跳过的位置开始取多少条数据

 function first() {
        $("#PageIndex").val(1);
        GetData();
    }

    function last() {
        $("#PageIndex").val(MaxPagerCount);
        GetData();
    }

    function prev() {
        var pageindex = $("#PageIndex").val() - 1;
        if (pageindex < 1)
            pageindex = 1;

        $("#PageIndex").val(pageindex);
        GetData();
    }

    function next() {
        var pageindex = parseInt($("#PageIndex").val()) + 1;
        if (pageindex > MaxPagerCount)
            pageindex = MaxPagerCount;
        $("#PageIndex").val(pageindex);
        GetData();
    }

根据你前台获取的点击事件对你定义的变量进行加减,确认你要到达哪一页

原文地址:https://www.cnblogs.com/Liyazi/p/10640909.html

时间: 2024-10-11 10:35:36

手写分页的相关文章

springMVC手写分页查询

package com.neuedu.java7.baen; public class Page { private int currentPage = 1; //当前页数 private int totalPages; //总页数 private int total; //记录总行数 private int pageSize = 5; //每页记录行数 private int nextPage; //下一页 private int prefPage; //前一页 public Page(){

纯手写分页控件CSS+JS+SQL

Asp.net中虽然用DataPager配合ListView可以实现分页显示,但是有时候由于开发环境等问题不能用到DataPager控件,那么自己手工写一个分页控件就很有必要了,当然,最重要的是通用性. 首先,来看一下我的分页控件的显示效果: 简单说明:红底色的为当前页,白底红字的是选择新的页,共有1236页,默认从第1页开始显示,分页行长度含“……”共11格,有全显示,单边省略和两边省略三种模式. 当你仔细看完上图的显示效果并理解其分页的相应变化后,我们就要开始制作这个分页了:) 第一步)获取

手写PE文件(二)

[文章标题]: 纯手工编写的PE可执行程序 [文章作者]: Kinney [作者邮箱]: [email protected] [下载地址]: 自己搜索下载 [使用工具]: C32 [操作平台]: win 7 [作者声明]: 只是感兴趣,没有其他目的.失误之处敬请诸位大侠赐教! ---------------------------------------------------------------------------------------------------------------

ADO.NET #3-1 (GridView + DataReader + SqlCommand)完全手写Code Behind

[C#] ADO.NET #3-1 (GridView + DataReader + SqlCommand)完全手写.后置程序代码 之前有分享过一个范例 [C#] ADO.NET #3 (GridView + SqlDataSource)完全手写.后置程序代码,兼论 SqlDataSource与UpdateParameter/DeleteParameter的用法 后来,在网络上找到的人,就开始大量地为「SqlDataSource小精灵」动手写程序 这并非我的原意. 我的意思是,透过手写的程序代码

010Edit手写PE

前言PE结构DOS头IMAGE_DOS_HEADERPE头介绍总大小[248字节]结构体含义标记(4字节)0x4550文件头(20字节)扩展头(224字节)为程序添加ExitProcess函数 前言 最近,学习了PE知识,为了更深层的掌握PE结构,使用纯手工写一个PE小程序,只弹出一个MessageBox的小程序 内容:Hello World! PE结构 DOS头 IMAGE_DOS_HEADER 每一个PE文件是以一个DOS程序开始的,有了它,一旦程序在DOS下执行,DOS就能识别出这是有效的

wex5 实战 手写签名与上传

之前做过一个物流演示模块,有一个功能没做完,就是收件人收货后,可以手写签名并上传,替代传统纸张的签名.今天终于做完了. 一 效果演示: 后台图片上传成功 二 设计思路: 运用canvas插件jq-signature,制作手写签名,并通过二进制流方式上传图片 三 代码实现: 1 .下载引入插件jq-signature 手写签名插件,网上有很多,经过多种插件的逐步尝试,只有插件jq-signature达到了我想要的效果; 原因有二:1,支持手机触摸,web,鼠标.其它有的不支持手机触摸. 2,直接转

iOS开发UI基础—手写控件,frame,center和bounds属性

一.手写控件 1.手写控件的步骤 (1)使用相应的控件类创建控件对象 (2)设置该控件的各种属性 (3)添加控件到视图中 (4)如果是button等控件,还需考虑控件的单击事件等 (5)注意:View Contollor和view的关系 2.注意点 在OC开发中,Storyboard中的所有操作都可以通过代码实现,程序员一定要熟练掌握代码布局界面的能力! 设置控件监听方法的示例代码如下: [btn addTarget:self action:@selector(click:) forContro

logistic回归与手写识别例子的实现

本文主要介绍logistic回归相关知识点和一个手写识别的例子实现 一.logistic回归介绍: logistic回归算法很简单,这里简单介绍一下: 1.和线性回归做一个简单的对比 下图就是一个简单的线性回归实例,简单一点就是一个线性方程表示 (就是用来描述自变量和因变量已经偏差的方程) 2.logistic回归 可以看到下图,很难找到一条线性方程能将他们很好的分开.这里也需要用到logistic回归来处理了. logistic回归本质上是线性回归,只是在特征到结果的映射中加入了一层函数映射,

KNN分类算法实现手写数字识别

需求: 利用一个手写数字"先验数据"集,使用knn算法来实现对手写数字的自动识别: 先验数据(训练数据)集: ?数据维度比较大,样本数比较多. ? 数据集包括数字0-9的手写体. ?每个数字大约有200个样本. ?每个样本保持在一个txt文件中. ?手写体图像本身的大小是32x32的二值图,转换到txt文件保存后,内容也是32x32个数字,0或者1,如下: 数据集压缩包解压后有两个目录:(将这两个目录文件夹拷贝的项目路径下E:/KNNCase/digits/) ?目录trainingD