【问题标题】:why server-side datatables show all records in one page and search doesn't work?为什么服务器端数据表在一页中显示所有记录而搜索不起作用?
【发布时间】:2019-02-18 03:53:54
【问题描述】:

我一直在使用 data-table 。一切都很好,问题是 - 分页无法正常工作, - 搜索不起作用 - 所有数据仅显示在一页中

我使用下面的代码来初始化数据表-

$(document).ready(function () {
    $('#example').DataTable({

        "processing" : true,
        "serverSide" : true,
        "pageLength" : 5,
        "lengthMenu": [[10, 25, 50, -1], [10, 25, 50, "All"]],
        "ajax" : {
            url: "/users",
            type:"GET",
            dataSrc : "data",
        },
        "columns":[
             {"data": "id"},
            {"data": "name"},
            {"data": "tweet"}
        ]
    });

});

和我的控制器服务(播放框架)

 public Result ListAll(){
    List<User> users = User.find.all();
    System.out.println(toJson(users).toString());
    DataTableObject dataTableObject = new DataTableObject();
    dataTableObject.setData(users);

    String json = toJson(dataTableObject).toString();
    System.out.println("----> " + json );
    return ok(toJson(dataTableObject));

}

DataTableObject 类

public class DataTableObject {
    int draw = 1;
    int  recordsTotal= 26;

    int  recordsFiltered =26;

    List<User> data;

    public int getRecordsTotal() {
        return recordsTotal;
    }

    public void setDraw(int draw) {
        this.draw = draw;
    }

    public int getDraw() {
        return draw;
    }

    public void setRecordsTotal(int recordsTotal) {
        this.recordsTotal = recordsTotal;
    }

    public int getRecordsFiltered() {
        return recordsFiltered;
    }

    public void setRecordsFiltered(int recordsFiltered) {
        this.recordsFiltered = recordsFiltered;
    }


    public List<User> getData() {
        return data;
    }

    public void setData(List<User> data) {
        this.data = data;
    }

}

这是我http://localhost:9000/的截图

【问题讨论】:

    标签: java jquery mysql datatables playframework-2.6


    【解决方案1】:

    当使用serverSide:true时,Datatables 不处理搜索、过滤、分页或排序。当您对表格进行分页、排序或搜索时,您必须根据与 Get/Post 请求一起发送的 sent parameters 数据表来操作您的查询。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-18
      • 1970-01-01
      • 2018-05-17
      • 2017-04-17
      • 1970-01-01
      • 1970-01-01
      • 2020-12-01
      • 2016-11-07
      相关资源
      最近更新 更多