在同一个页面,多个 datagrid查询使用同个元素来展示时,存在分页页数缓存 相互 影响覆盖的问题,比如:
第一个 datagrid 查询,翻页到第10页,然后在点击按钮,查询第二个 datagrid,这是第二个datagrid也会查询第10页,而不是查询第1页!!!!
解决方法:需要重置页码:
var _data = $('#datagrid_table').data('datagrid'); // 拿到datagrid初始化的数据缓存 if(_data && _data.options){ _data.options.pageNumber = 1; // 修改缓存 } $.data($('#datagrid_table')[0], 'datagrid', _data); // 把修改写回去
这里 datagrid_table为:
1 | <table id= "datagrid_table" ></table> |
多个查询使用同一个元素 datagrid_table 来展示时存在这个问题。
当然如果每次动态的生成 datagrid_table 展示元素 可以解决这个问题,但是 datagrid 对应的的 toolbar 也需要重新生成,toolbar中的查询条件会丢失掉!
所以还是 重置页码的方法简单好使。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,携手博客园推出1Panel与Halo联合会员
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步