gpt4 book ai didi

javascript - 使用 jQuery 进行 Ajax 分页

转载 作者:行者123 更新时间:2023-11-30 16:16:22 24 4
gpt4 key购买 nike

我需要从一个对返回结果数量有限制的 API 中检索数据。

使用找到的结果总数,我可以进行额外的 ajax 调用,直到检索到所有数据。但是,在页面上显示之前,我需要按字母顺序对所有数据进行排序。

在成功进行所有 ajax 调用后,如何访问数组中的数据?

这是我目前所拥有的:

var mydata = [];

function loadPosts() {

var api = 'http://someurl.com';

$.ajax({
url: api,
dataType: 'jsonp',
data: {
rows: 1,
},
success: function(data) {
totalNumberOfRecords = data.numFound;

for (var start = 0; start < totalNumberOfRecords; start += rows) {
$.ajax({
url: api,
dataType: 'jsonp',
data: {
'rows': rows,
'start': start,
},
success: function(data) {
$.each(data.namesList, function(index, item) {
mydata.push(item.firstName);
});
},
});
}
},
});
}

console.log(mydata);

最佳答案

这是一种方便面解决方案。

var numOfAjax = 0;
var numOfResolvedAjax = 0;
for (var start = 0; start < totalNumberOfRecords; start += rows) {
numOfAjax++;
$.ajax({
url: api,
dataType: 'jsonp',
data: {
'rows': rows,
'start': start,
},
success: function(data) {
$.each(data.namesList, function(index, item) {
mydata.push(item.firstName);
});
numOfResolvedAjax++;

// Check if all ajax request has been responded to sort the result.
if (numOfResolvedAjax === numOfAjax) {
sortMyData(myData);
}
},
});
}

完美解决方案请进async具有许多功能的库可以为您提供帮助。例如:async.parallel可能是您需要的。

关于javascript - 使用 jQuery 进行 Ajax 分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35472587/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com