一沙框架(YiShaAdmin) -修改数据后回到起始页的解决办法

用过一沙框架开发的知道,一沙封装了很多js通用的方法,组件,其中ysTable()便是其中之一。

分页组件是包含在ysTable()中的,其中的分页组件,只有选择器类名,没有唯一的ID定位,

通过看页面的代码,当前页的类名都设置active类,但是左侧每页显示数量的组件也有active,

类名并不唯一,就有点难搞了。

每次Form页面修改数据后调用search方法,都会刷新到第一页,这样数据一多,每次都要翻到第N页,那心情~~~~这里就不多加描述了!

花费了几个小时,终于找到了一个并不完美的解决方法:

1.首先找到ysTable()中封装的search方法,文件在yisha.admin.web/wwwroot/yisha/js/yisha-jquery-bootstrap-table-plugin.js

一沙框架(YiShaAdmin) -修改数据后回到起始页的解决办法

 

2.在文件中找到ysTable.methods  方法,中间有个search方法,如图:

一沙框架(YiShaAdmin) -修改数据后回到起始页的解决办法

 

3.可以看到,每次刷新后,都是从第一页开始的,这样页数一多,翻页会相当烦躁,不知有没有同感!!!

经过不断验证,index页面gridTable中,$((.bootstrap-table .active .page-link))的定位是唯一的,

因此可以用来获取当前页的页码:$('.bootstrap-table .active .page-link').eq(0).text()

4.将search中的“1"更改为:$('.bootstrap-table .active .page-link').eq(0).text(),重启项目即可生效:

一沙框架(YiShaAdmin) -修改数据后回到起始页的解决办法

 

当然,这是比较浅显的解决方式,Jquery及bootstrap用的不够专业!!!

 
还有一种方式,框架所用的是:parent.searchGrid();
可以改成触发Index页面refresh按钮的方式,即:parent.$("button[name='refresh']", parent.doucment).trigger('click');

上一篇:[LeetCode]642. Design Search Autocomplete System(JavaScript解法)


下一篇:基于rabbitmq队列的HPA