Javascript responseText在alert中可用,但不会保存在variable或return中
为什么响应没有存储在变量中或返回?我猜Javascript responseText在alert中可用,但不会保存在variable或return中,javascript,ajax,xmlhttprequest,Javascript,Ajax,Xmlhttprequest,为什么响应没有存储在变量中或返回?我猜response\u var的范围在onreadystatechange函数中结束,所以我尝试了return。但是值是未定义的Ajax函数总是与正常的代码流不同步,因此被称为“异步JavaScript和XML”。对于Ajax必需的事件,您不应该依赖于返回,而是在从Ajax得到响应时立即执行任务 var response_var=""; // Added this line for debugging ajax.onreadystatechange=func
response\u var
的范围在onreadystatechange
函数中结束,所以我尝试了return
。但是值是未定义的Ajax函数总是与正常的代码流不同步,因此被称为“异步JavaScript和XML”。对于Ajax必需的事件,您不应该依赖于返回,而是在从Ajax得到响应时立即执行任务
var response_var=""; // Added this line for debugging
ajax.onreadystatechange=function()
{
if(ajax.readyState==4 & ajax.status==200)
{
response_var=(ajax.responseText);
alert(ajax.responseText); // This alerts properly (some text).
return (ajax.responseText); // This is returning as undefined
}
}
return response_var; // This is empty if I add the line 1, if not in console it gives error response_var is not defined.