1、前端调用封装好的方法$.table.init,传入后台url。

    1. var options = {
    2. url: prefix + "/list",
    3. queryParams: queryParams,
    4. columns: [{
    5. field: 'id',
    6. title: '主键'
    7. },
    8. {
    9. field: 'name',
    10. title: '名称'
    11. };
    12. $.table.init(options);
    13. function queryParams(params) {
    14. var search = $.table.queryParams(params);
    15. search.userName = $("#userName").val();
    16. return search;
    17. }

    3、后台实现查询逻辑,调用startPage()方法即可自动完成服务端分页。

    常见坑点1:selectPostById莫名其妙的分页。例如下面这段代码

    1. startPage();
    2. List<User> list;
    3. } else {
    4. list = new ArrayList<User>();
    5. }
    6. Post post = postService.selectPostById(1L);
    7. return getDataTable(list);

    常见坑点2:添加了startPage方法。也没有正常分页。例如下面这段代码

    1. startPage();
    2. Post post = postService.selectPostById(1L);
    3. List<User> list = userService.selectUserList(user);
    4. return getDataTable(list);

    原因分析:只对该语句以后的第一个查询(Select)语句得到的数据进行分页。上面这个代码,应该写成下面这个样子才能正常分页。