#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={}; //不清空,有問題:搜索條件會保留 //清空, 有問題:分頁的時候沒有搜索條件了,分頁會受到影響 } });