当前我正在尝试动态地填充网站。当我遍历代码时,它完美无缺。但是,当我按照预期在页面加载上运行它时,它不起作用。相关的代码是:Javascript/AJAX仅适用于调试
<body onload="populate_all(string)";>
function populate_all(string)
{
var split = string.split(" ");
for(i = 0; i < split.length; i++)
{
populate(split[i], 'main');
}
}
function populate(string, location)
{
if (string.length==0)
{
document.getElementById(location).innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
var divTag = document.createElement("div");
divTag.className ="info";
divTag.innerHTML = xmlhttp.responseText;
document.getElementById(location).appendChild(divTag);
}
}
xmlhttp.open("GET","populate.php?string="+string,true);
xmlhttp.send();
}
我已经读过这个问题,足以肯定PHP不是问题。基本上说:我在循环中多次使用AJAX运行JavaScript函数,并且代码仅在调试时才起作用。谢谢您的帮助!
定义“它不起作用”。 – 2012-04-08 14:21:28
对不起,“它不工作”不是很清楚。而不是创建我想要的div,这是几个具有不同信息的div,它只创建最后一个div的最后一个div或四个实例。 – NSchulze 2012-04-08 16:03:27