여기에 대한 통찰력이 있으십니까? 코드를 실행하면 아무 것도 산출되지 않습니다. 페이지에 텍스트가 표시되지 않습니다. 주석 처리 된 행의 주석을 제거하면 xml 결과가 나타납니다. 왜 그것을 변수로 전달할 수 없습니까? (함수가 호출되고, 그래서 내가 참고로, 경고를받을 수 있나요.)xmlhttp.responseText를 반환 할 수 없습니까?
<script type="text/javascript">
function loadXMLDoc(parameterString)
{
alert("loadXMLDoc has been called.");
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
//document.getElementById("xmlResults").innerHTML = xmlhttp.responseText;
alert("Got the response!");
return xmlhttp.responseText;
}
else document.getElementById("xmlResults").innerHTML = "No results."
}
var url = "http://metpetdb.rpi.edu/metpetwebsearchIPhone.svc?" + parameterString;
xmlhttp.open("GET",url,true);
xmlhttp.send();
}
</script>
<script type="text/javascript">
$(function(){
//left out irrelevant code which creates the var "parameters"
var results = loadXMLDoc(parameters);
document.getElementById("xmlresults").innerHTML = results;
});
</script>
<body>
<div id="xmlResults"></div>
</body>
아! 비동기 호출에서 변수를 반환 할 수 없다는 추가 정보가 있습니다. 헬퍼 함수를 사용해야합니다. 이것은 절대적으로 불가피하게 사실입니까? – Aerovistae