为了账号安全,请及时绑定邮箱和手机立即绑定

bootstrap table插件分页传递给后台的参数接收问题

bootstrap table插件分页传递给后台的参数接收问题

Cats萌萌 2019-02-17 08:13:20
查询出结果后,选择第二页时,页面数据又变回原来未查询的数据了,也就是说打开第二页的时候没有带上查询的参数。这是bootstrap-table的初始化函数 //查询栏 function userquery(){ var data=$("#formSearch").serialize(); $.post( '/yycgproject/queryUser_result', data, function(msg){ //这里必须接收json对象 //此处判断不能简写为!msg $('#tb_departments').bootstrapTable('load',msg); }, 'json' ); }; $(function() { //1.初始化Table var oTable = new TableInit(); oTable.Init(); //2.初始化Button的点击事件 /* var oButtonInit = new ButtonInit(); oButtonInit.Init(); */ }); var TableInit = function() { var oTableInit = new Object(); //初始化Table oTableInit.Init = function() { $('#tb_departments').bootstrapTable({ url : '/yycgproject/queryUser_result', //请求后台的URL(*) method : 'get', //请求方式(*) toolbar : '#toolbar', //工具按钮用哪个容器 striped : true, //是否显示行间隔色 cache : false, //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*) pagination : true, //是否显示分页(*) sortable : false, //是否启用排序 sortOrder : "asc", //排序方式 queryParamsType : '', queryParams : oTableInit.queryParams,//传递参数(*) sidePagination : "server", //分页方式:client客户端分页,server服务端分页(*) pageNumber : 1, //初始化加载第一页,默认第一页 pageSize : 10, //每页的记录行数(*) pageList : [ 10, 25, 50, 100 ], //可供选择的每页的行数(*) strictSearch : true, clickToSelect : true, //是否启用点击选中行 /* height : 550, //行高,如果没有设置height属性,表格自动根据记录条数觉得表格高度 */ uniqueId : "userid", //每一行的唯一标识,一般为主键列 cardView : false, //是否显示详细视图 detailView : false, //是否显示父子表 columns : [ { field : 'userid', title : '账号' }, { field : 'username', title : '名称' }, { field : 'groupid', title : '用户类型', formatter : function(value, row, index) { if (value == 1) { return "卫生局"; } else if (value == 2) { return "卫生院"; } else if (value == 3) { return "卫生室"; } else if (value == 4) { return "供货商"; } else if (value == 0) { return "管理员"; } } }, { field : 'sysmc', title : '所属单位' }, { field : 'userstate', title : '状态' } ] }); }; //得到查询的参数 oTableInit.queryParams = function(params) { var temp = { //这里的键的名字和控制器的变量名必须一直,这边改动,控制器也需要改成一样的 pageSize : params.pageSize, //页面大小 pageNum : params.pageNumber,//页码 /* sysuserCustom.groupid:groupid */ groupid:$('#txt_search_type').val() }; return temp; }; return oTableInit; }; 再上面的查询参数设置中,设置了groupid:$('#txt_search_type').val(),让groupid传到后台,但是后台的controller中//根据页面的条件查询数据 @RequestMapping("/queryUser_result") @ResponseBody public DataGridResultInfo queryByVo(SysuserQueryVo sysuserQueryVo,@RequestParam(defaultValue="10")int pageSize,@RequestParam(defaultValue ="1")int pageNum) throws Exception{ DataGridResultInfo resultInfo = userService.findSysuserList(sysuserQueryVo, pageSize, pageNum); return resultInfo; } 是用 sysuserQueryVo 这个pojo接收了,传过去的参数并无法装配到pojo中,希望大佬指教一下,查询后的分页功能是怎么实现的
查看完整描述

2 回答

?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

在查询的参数添加查询的参数,然后后台使用request.getParameter()的方式接收即可

查看完整回答
反对 回复 2019-03-01
?
胡子哥哥

TA贡献1825条经验 获得超6个赞

分页应该这样设置:

 return {
                pageNumber:(params.offset / params.limit) + 1,
                pageSize: params.limit,
                newsType : newsType,
                startTime:startTime,
                endTime :endTime
            };

查询的时候应该重置一下参数:
$table.bootstrapTable('refreshOptions',{pageNumber:1});

查看完整回答
反对 回复 2019-03-01
  • 2 回答
  • 0 关注
  • 2984 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号