一、问题描述
共有11条数据,每页10条数据,那么就有两页。第一页10条,第二页1条数据。当删除第二页的那条数据,然后调用table.reload刷新页面,发现页面没有重新返回上一页并加载数据,而是获取了第二页数据,返回空json数组。
二、解决方案
思路:删除方法中,判断当前页共有几条数据,如果超过一条,就正常执行table.reload。否则,判断当前页码不是第一页就减一,然后执行table.reload。获取当前页码需要定义个全局变量保存页码。
核心代码片段:其中主要用到table.cache
// 定义全局变量
var page = 1
……
……
if (table.cache['stdlist'].length == 1 && page > 1) {
table.reload('stdlist', {
url: listurl,
page: {
curr: page - 1
}
})
} else {
table.reload('stdlist', {
url: listurl
})
}