我从数据库和显示器返回大约200多个项目,但我想知道何时没有更多项目要返回,因为我在滚动加载功能中使用它并想告诉用户何时走到了尽头。
下一步 - 获取下一批用户
Next = function () {
var _page = $.views.Roster.ViewModel.CurrentPage() + 1;
$.views.Roster.GetPage("/api/Roster", 9, _page);
};
$.views.Roster.GetPage = function (url, id, pageNumber) {
$.grain.Ajax.Get({
Url: url,
DataToSubmit: { pageNumber: pageNumber, id: id },
DataType: "json",
OnSuccess: function (data, status, jqXHR) {
$.views.Roster.RosterViewModel.AddUsers(data);
$.views.Roster.ViewModel.CurrentPage(pageNumber);
}
});
};
如果我要提供更多信息,请告诉我。
答案 0 :(得分:0)
你可以:
如果您控制返回的JSON 和格式是可修改的(例如,它不是某种可公开访问的Web服务),您可以修改返回的响应,使其包含所需的信息作为一个额外的领域。
{
users: [...your list of users data],
hasMoreData: true
}
...或
假设数据以固定长度批次返回,检查返回批次的长度,如果它短于预期长度,则将其视为没有其他项目的标记(这会使您暴露于潜在的调用如果总记录是批次长度的精确倍数,则结果为空:
if (usersData.length < MAX_BATCH_LENGTH) {
hasMoreData(false);
}