我正在使用AJAX来呈现计算结果。 我调用一个返回结果的PHP文件,然后将它呈现在网页上。
有时计算需要很长时间,并且页面会一直停滞,直到AJAX调用返回结果为止。
有没有办法使用ajax,仍然可以在网页上执行其他操作,而不必等到AJAX调用返回。
我正在使用这个AJAX调用函数(我所知道的标准函数)。
function GetCalculation(str)
{
var result ;
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)
{
result = xmlhttp.responseText ;
}
}
xmlhttp.open("GET","GetRouts.php?q="+str,false);
xmlhttp.send();
result = xmlhttp.responseText ;
return result;
}
答案 0 :(得分:0)
如果您需要使用javascript来处理您需要等待回调的请求所发送的数据,那么Ajax是异步的。如果您不需要处理请求中的数据(例如动画等等......),您可以在此函数之外编写代码。
答案 1 :(得分:0)
是的,只需将true
作为第三个参数传递给open
,然后在onreadystatechange
事件中处理结果。