В настоящее время я пытаюсь заполнить сайт динамически. Когда я просматриваю код, он работает отлично. Однако, когда я запускаю его при загрузке страницы по назначению, он не работает. Соответствующий код: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 не является проблемой. В основном: я выполняю javascript-функцию с AJAX несколько раз в цикле, и код работает только при отладке. Спасибо за помощь!
Определите, что «это не работает». –
Извините, «это не работает» не совсем понятно. Вместо того, чтобы создавать divs, которые я хочу, а это несколько div с разной информацией, он создает либо только последний div, либо четыре экземпляра последнего div. – NSchulze