实时抓取网页数据(如何让数据处理后仍可以留在当前页?)
优采云 发布时间: 2021-10-07 01:17实时抓取网页数据(如何让数据处理后仍可以留在当前页?)
BootstrapTable 组件在最近的项目中用于开发。在开发过程中,我们遇到了这样一个需求:javascript
表格分页后,处理完一页中的一条数据后,刷新表格。为了保证表的实时正确性,先销毁表,再获取新表,获取数据java
$('#bootstrapTableId').bootstrapTable('destroy');
$('#bootstrapTableId').bootstrapTable({
...
pageNumber:1,
...
});
在接下来的开发过程中,如果对某条数据进行操作后需要刷新表格数据,但刷新表格后,pageNumber会被重置为1,即跳转回首页。处理后如何保持当前页面的数据,有两种方式:ajax
1、refresh:刷新表数据,可以加参数url指定请求发送到的url(可以是新的),silent:true 静默更新时,query:{}可以指出一些新的ajax请求参数。引导程序
$('#bootStrapTableId').bootStrapTable('refresh');
2、获取当前表格显示的页码,即当前表格页面显示的页数。处理完表格数据后,在回调函数中加入表格当晚的页码,这样表格在销毁后显示给定的页码 Render data: function
$('#bootStrapTableId').bootStrapTable('getOptions').pageNumber;
注意:getOptions:获取表的一些基本属性,并返回一个对象。键有许多属性,如 conlumns、data、sortOrder、class。如果不知道属性是什么,可以通过控制台查看url。
pageNumber:这是你之前的bootstraptable的属性spa
总结:最后使用2中的方法解决问题,既可以保证表销毁后新发起的请求渲染出来的数据的及时性,也可以保证数据的正确性。至于刷新方式,就是刷新表,可以理解为我对ajax的局部请求效果没有深入理解,但是能够实现需求。代码