<script type="text/javascript">
        var persontable;

  var personQueryCondition = {

//需要的查询条件放到这里来
            worksn: "",
            name: ""
        }

  $(document).ready(function () {

  persontable = $('#dataTables-custom').DataTable({
                dom: '<t><"bp"i><"bp"p><"bp"l>',  //需要导出excel时打开
                //dom: 'r<t><"dtpgclass"lp><"clear">',  //需要导出excel时打开
                aLengthMenu: [10, 20, 100, 10000],
                language: {
                    "sProcessing": "数据加载中...",
                    "sLengthMenu": "每页显示 _MENU_ 条记录",
                    "sZeroRecords": "没有匹配结果",
                    "oPaginate": {
                        "sFirst": "首页",
                        "sPrevious": "上页",
                        "sNext": "下页",
                        "sLast": "末页"
                    },
                    "sInfo": "当前显示第 _START_ 至 _END_ 项,共 _TOTAL_ 项",
                    "sInfoEmpty": "当前显示第 0 至 0 项,共 0 项"
                },  //提示信息

serverSide: true,
                ajax: function (data, callback, settings) {
                    var sortinfo = DatablesExtend.getSortInfo(data, settings);
                    if (sortinfo != null) {
                        $.extend(personQueryCondition, sortinfo);
                    }
                    //排序属性可通过data.order属性获得
                    $.ajax({
                        type: "POST",
                        url: LinkAddress.personQuery,
                        cache: false,  //禁用缓存
                        data: JSON.stringify(personQueryCondition),  //传入组装的参数
                        contentType: "application/json;",
                        dataType: "json",
                        beforeSend: function (xhr) {
                            xhr.setRequestHeader("Authorization", $.cookie('token'));
                        },
                        success: function (result) {
                            if (result.code == 0) {
                                callback({
                                    draw: data.draw,
                                    data: result.orgs,
                                    recordsTotal: result.total,
                                    recordsFiltered: result.total
                                });
                            }
                        }
                    });
                },
                columns: [
                    { "data": null, "orderable": false },
                    { "data": "worksn" },
                    { "data": "name" },
                    { "data": "sex" },
                    { "data": "irismodeStr" },
                    { "data": "orgs" },
                    { "data": null }
                ],
                order: [],
                columnDefs: [{
                    "targets": 3,
                    "render": function (data, type, row, meta) {
                        if (data == 0) {
                            return '男';
                        }
                        else {
                            return '女';
                        }
                    }
                }, {
                    "targets": 0,
                    "render": function (data, type, row, meta) {
                        return "<input type='checkbox' value='" + data.personid + "'>";
                    }
                }, {
                    "targets": -1,
                    "render": function (data, type, row, meta) {
                        var d = data.personid;
                        var da = JSON.stringify({ personid: data.personid, name: data.name, worksn: data.worksn });
                        return "<a href='#' data-page='showpersoninfo' data-param=" + d + " onclick='pageRedirect(this)'>  查看  </a><a href='#' data-page='editperson' data-param=" + d + " onclick='pageRedirect(this)'>  编辑  </a><a href='#' data-page='bindingdev' data-param=" + da + " onclick='pageRedirect(this)'>  关联设备  </a><a href='#' data-param=" + d + " onclick='deletea(this)'>  删除  </a>";
                    }
                }],
                deferRender: true,
                processing: true,
                scrollY: '50vh',
                scrollCollapse: false,
                scroller: {
                    loadingIndicator: true
                },
                searching: false,
                stateSave: false,
                paging: true,
                pageLength: 10,
                //select: true,
                buttons: [{
                    extend: 'excelHtml5',
                    title: 'Data export'
                }],
            });

});

需要查询的时候 只需要执行 : 把查询条件更新一下,然后执行  persontable.ajax.reload(); 这句话就好了

DataTable插件 后台分页 (服务器端分页)的更多相关文章

  1. datatable表格框架服务器端分页查询设置

    更多内容推荐微信公众号,欢迎关注: js代码如下: $('#mytable').dataTable( { "bServerSide": true, //开启服务器模式,使用服务器端 ...

  2. thinkphp5配合datatable插件分页后端处理程序

    thinkphp5配合datatable插件分页后端处理程序第一版DataTable.php v.1.0 <?php use think\Db; /** * DataTable.php. */ ...

  3. Spring boot入门(三):SpringBoot集成结合AdminLTE(Freemarker),利用generate自动生成代码,利用DataTable和PageHelper进行分页显示

    关于SpringBoot和PageHelper,前篇博客已经介绍过Spring boot入门(二):Spring boot集成MySql,Mybatis和PageHelper插件,前篇博客大致讲述了S ...

  4. [jQuery]jQuery DataTables插件自定义Ajax分页实现

    前言 昨天在博客园的博问上帮一位园友解决了一个问题,我觉得有必要记录一下,万一有人也遇上了呢. 问题描述 园友是做前端的,产品经理要求他使用jQuery DataTables插件显示一个列表,要实现分 ...

  5. 基于bootstrap 的datatable插件的使用(php版)

    Datatables是一款jquery表格插件.它是一个高度灵活的工具,可以将任何HTML表格添加高级的交互功能.详细学习请参考其官网:http://datatables.net/中文网:http:/ ...

  6. datatables.js 简单使用--多选框和服务器端分页

    说明:datatables是一款jQuery表格插件.感觉EasyUI的datagrid更易用 内容:多选框和服务器端分页 缘由:写这篇博客的原因是datatables的文档写的不怎么样,找东西很麻烦 ...

  7. 分享在MVC3.0中使用jQuery DataTable 插件

    前不久在网络上看见一个很不错的jQuery的DataTable表格插件.后来发现在MVC中使用该插件的文章并不多.本文将介绍在MVC3.0如何使用该插件.在介绍该插件之前先简单介绍一下,推荐该插件的原 ...

  8. DataTable插件通过js导出Excel

    $('#myTab').DataTable( { serverSide: false,//分页,取数据等等的都放到服务端去. true为后台分页,每次点击分页时会请求后台数据,false为前台分页 d ...

  9. datatables服务器端分页要点

    背景:当要查询大量数据的时候,有datatables自身的分页,明显查询比较慢,这是要使用服务器端分页 参数:"bServerSide": true, "fnServer ...

随机推荐

  1. CentOS上安装配置Ruby on Rails

    0.install sublime editor(optional) ref:http://www.tecmint.com/install-sublime-text-editor-in-linux/ ...

  2. 【netcore基础】ConcurrentDictionary 使用字符串作为key给代码加锁且使用EF事物防止并发调用数据混乱的问题

    业务场景需要锁住指定的字符串下的代码,防止并发创建多个订单 这里我们使用 ConcurrentDictionary 首先初始化一个字典 private static readonly Concurre ...

  3. C#WinForm窗体内Panel容器中嵌入子窗体、程序主窗体设计例子

    C#WinForm父级窗体内Panel容器中嵌入子窗体.程序主窗体设计例子 在项目开发中经常遇到父级窗体嵌入子窗体所以写了一个例子程序,顺便大概划分了下界面模块和配色,不足之处还望指点 主窗体窗体采用 ...

  4. git使用——推送本地文件到远程仓库

    捣鼓了一下午之后总结如下:   1.首先可以照着这个链接里面博主给出的详细方法进行操作和配置: http://www.open-open.com/lib/view/open1454507333214. ...

  5. 我永远无法学会的dp

    起源:在codeforceround518之后我发现别人都会div1A我根本写不出来,所以我决定退役 咕咕咕咕

  6. react 使用 react-loadable分包

    文档 yarn add react-loadable 使用 import Loadable from "@/components/loadable"; const Home = L ...

  7. jquery怎么实现点击一个按钮控制一个div的显示和隐藏

    示例html 1 2 <div class="abc" style="display:none"></div> <input ty ...

  8. vue2.0 --- vuex (一)

    之前做vue项目中没有使用vuex  一直使用vue-router 组件.路由一直的转换,烦不胜烦 今天研究一下vuex vuex是什么: vuex是专门为vue.js应用程序开发的状态管理模式. 解 ...

  9. Java编程基础篇第四章

    循环结构 循环结构的分类 for循环,while循环,do...while()循环 for循环 注意事项: a:判断条件语句无论简单还是复杂结果是boolean类型 b:循环体语句如果是一条语句,大括 ...

  10. python全栈开发 * 10知识点汇总 * 180612

    10 函数进阶 知识点汇总 一.动态参数 形参的第三种1.动态接收位置传参 表达:*args (在参数位置编写 * 表⽰接收任意内容) (1)动态位置参数def eat(*args): print(a ...