我试图递归地调用ajax方法,直到maxnumId
为空或未定义。我当前的代码只会触发一次!有人可以告诉我我在做什么错吗?谢谢
这是代码:
<script>
var maxnumId = null;
function callApi4() {
$.ajax({
type: "GET",
dataType: "jsonp",
cache: false,
url: "https://api.somesite.com/ddddd" + ( maxnumId ? "&max_id=" + maxnumId : ""),
success: function(data) {
maxnumId = data.pagination.next_max_id;
alert('maxnumId is now: ' + maxnumId);
document.myform.outputtext.value = document.myform.outputtext.value+data.pagination.next_max_id+'\n' ;
for (var i = 0; i < 100; i++) {
$(".content").append("<img class='image' src='" + data.data[i].images.low.url +"' />");
}
if(maxnumId != "undefined"){
setTimeout(callApi4(), 2000);
}
else
{
alert('finished');
}
}
});
}
</script>
<button onclick="callApi4()">call ajax first time</button>
最佳答案
代替setTimeout(callApi4(), 2000);
编写setTimeout(callApi4, 2000);
,从callApi4方法中删除括号。