根据接受的答案here,我试图在for循环中调用该函数来加载本地域中某些页面的内容,但我只得到第一页的结果,这只是在我评论for行时。 这是我的代码:
function ready()
{
var from = 0, to = sites.length;
var xmlhttp=false;
var content = '';
for(from; from < to; from++)
{
loadDoc(sites[from]);
if(xmlhttp==false)
{
setTimeout(loadDoc(pages[from]), 1000); //try every sec.
}
else
{ content = xmlhttp.responseText;}
}
}
我做错了什么/失踪了?非常感谢。
答案 0 :(得分:1)
首先:从我在您的代码中看到的,您在每次迭代中将新数据重新分配给“content”变量(这意味着不是累积每个迭代的数据,它在最新的xmlhttp.responseText中在每次迭代中重写它自己
如果您希望将所有内容累积在一个变量中(作为字符串),那么您应该像这样使用变量:
content += xmlhttp.responseText;
如果您想将所有响应存储在单个变量中但作为数组(稍后可以针对每个单独的内容响应进行迭代),您可以使用数组添加,定义一个空数组:
var contentList = [];
并在每次迭代中将新项目推入其中:
contentList.push(xmlhttp.responseText);
我希望它有点帮助