Bootstraptable version(s) affected
1.21.2
Description
data-side-pagination="client";data-pagination="true"时,按示例总共有21条数据,使用hideRow隐藏掉index>=0 and index<=6的数据后,本页只剩下3条数据后续数据不会填充进本页,并且调用$table.bootstrapTable('getData', {useCurrentPage: true, includeHiddenRows: false})也只会获取到本页剩余的3行数据(不知道会不会是我对该方法理解有误,我预期的结果应该是会获取到未隐藏的行中前pageSize条数据)。除此以外,此时分页信息里显示总共剩余14行数据,然而实际上只会显示出里第一页3行数据和第二页4行数据
Example(s)
https://live.bootstrap-table.com/code/Kkunyue/14185
Possible Solutions
getData方法中过滤隐藏行和截取分页数据的执行顺序应该反了,调换顺序之后达到预期效果
{
key: "getData",
value: function getData(params) {
..............................
if (params && params.useCurrentPage) {
data = data.slice(this.pageFrom - 1, this.pageTo);
}
//将上面的分页截取和下面的隐藏行过滤调换顺序达到预期效果
if (params && !params.includeHiddenRows) {
var hiddenRows = this.getHiddenRows();
data = data.filter(function (row) {
return Utils.findIndex(hiddenRows, row) === -1;
});
}
.............................
return data;
}
},
至于最后7条消失的原因和修改办法参考https://blog.csdn.net/sinat_29279767/article/details/129010081