我正在使用soap来获取一些数据,使用目标网站制作的功能, 但问题是,我可以通过该功能为每个请求获取50个数据。
我打算使用ajax,例如我有170个id并想获得有关它们的信息。在每个请求中,我可以获取其中的50个。想知道是否有办法用ajax休息或暂停,然后请求第二个50或不?
或我可以使用的任何东西。
提前感谢;)
答案 0 :(得分:1)
嗯...你能做的是在Ajax函数中获取50个元素,并在Ajax返回回调中再次执行Ajax调用。
jQuery的一个例子如下所示:
var fetch = 170;
var responses = [];
function getStuff(offset) {
offset = offset || 0;
if (offset >= 170) return false;
$.get({
url: 'mybackend.php',
params: {offset: offset, limit: 50},
success: function(ret) {
if (offset < fetch)
getStuff(offset + 50)
responses.put(ret);
}
});
}
// Start:
getStuff();
这将一个接一个地启动Ajax调用,直到获取170个元素。最后,您获得了响应数组中的所有响应。
答案 1 :(得分:0)
在Javascript中有一个名为setTimeout()的奇妙函数,它会在一定时间后执行一些代码。如果需要多次重复,可以使用setInterval()代替。
对于setTimeout():http://www.w3schools.com/jsref/met_win_settimeout.asp
对于setInterval():http://www.w3schools.com/jsref/met_win_setinterval.asp