Не уверен, что проблема связана с Ajax или чем-то глупым в JavaScript, который я вообще пропускаю, но у меня есть следующий скрипт, где fox.html - это просто простой текст, который читает: Лентяй." :
function loadXMLDoc()
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","fox.html",true);
xmlhttp.send();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
fox = xmlhttp.responseText;
alert(fox);
}
}
}
onload = loadXMLDoc;
Приведенный выше скрипт просто предупреждает содержимое файла onx.html onload. Однако, если я изменю сценарий так:
{
fox = xmlhttp.responseText;
alert(fox);
}
становится:
{
fox = xmlhttp.responseText;
return fox;
}
и оповещение (loadXMLDoc ()); при загрузке я получаю 'undefined'.
Мне интересно, почему это так.