#layui table数据表格reload where参数保留问题 在使用layui过程当中多多少少会遇到些问题 table reload 有个坑:reload时where参数会保留上次的参数,若是用json
done: function(res, curr, count){ this.where={};}
来处理,默认的表格分页会把第一次请求的参数去掉。二者遇到些冲突。 用下面的方式来解决:api
var tableIns = table.render({ elem: '#test-table-toolbar' //绑定table表格 // ,url: '/api/mockrecord/findByRPID?rpid=100002' ,url: '/api/bug/findAllPageInfo?project_name='+project_name ,toolbar: '#test-table-toolbar-toolbarDemo' ,title: '用户数据表' //,height:500 //不建议这样使用,建议直接返回Map /*,parseData: function(res){ //res 即为原始返回的数据 return { "code": 0, //解析接口状态 "msg": "hint message", //解析提示文本 "count": 10, //解析数据长度 "data": res //解析数据列表 }; }*/ /* ,request: { pageName: 'curr' //页码的参数名称,默认:page ,limitName: 'nums' //每页数据量的参数名,默认:limit }*/ ,cols: [[ // {type: 'checkbox', fixed: 'left'}, {field:'bug_key', title: '关键字', width: 150,fixed: 'left'} ,{field:'bug_summary', title:'概要', width:600, unresize: true/*, sort: true*/} ,{field:'bug_labels', title:'模块', width:100, sort: true} ,{field:'bug_labels', title:'类型', width:100, sort: true} ,{field:'bug_assigneedisplayname', title:'经办人', width:100, templet: function(res){ return '<em>'+ res.bug_assigneedisplayname +'</em>' }} ,{field:'bug_reporterdisplayname', title:'报告人', width:100, templet: function(res){ return '<em>'+ res.bug_reporterdisplayname +'</em>' }} ,{field:'bug_priority', title:'优先级', width:100, /*, sort: true*/} ,{field:'bug_status', title:'状态', width:100} ,{field:'bug_createddate', title:'建立日期',width:100,templet: '<div>{{ layui.laytpl.toDateString(d.bug_createddate) }}</div>'} ,{field:'bug_updateddate', title:'已更新',width:100,templet: '<div>{{ layui.laytpl.toDateString(d.bug_createddate) }}</div>'} ,{field:'bug_duedate', title:'到期日',width:100,templet: '<div>{{ layui.laytpl.toDateString(d.bug_createddate) }}</div>'} ,{fixed: 'right', title:'操做', toolbar: '#test-table-toolbar-barDemo', width:150} ]] ,page: true ,limit: 50 ,limits: [50, 100, 150] // ,layout: ['count', 'prev', 'page', 'next', 'limit', 'refresh', 'skip'] ,jump: function(obj, first){ if(!first){ layer.msg('第 '+ obj.curr +' 页'); } } });
使用table的实例化对象来reloadapp
tableIns.reload({ page: { curr: 1 //从新从第 1 页开始 ,limit:50 } , method:'POST' ,url: '/api/bug/findAllBugsBySearchCondition' ,where: formData ,contentType: 'application/json' //,height: 300 ,done: function(res, curr, count){ //this.where={}; //不清空,有问题:搜索条件会保留 //清空, 有问题:分页的时候没有搜索条件了,分页会受到影响 } });