function loadxmldoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","ajax_info.php?fname=sakthi&lname=karthiga",false);
xmlhttp.send();
}
ajax_info.php
<?php
echo( "hello"."<br>".$_GET["fname"].$_GET["lname"]);
?>
在此代码中,我将ajax状态更改为FALSE,但stil的工作方式与TRUE相同 你能告诉他们差异是否为真和假?如果我改变虚假将在服务器端发生什么
答案 0 :(得分:2)
我想你正在讨论open
函数的第三个参数。它指示请求是否应该是异步的。在这两种情况下,完全相同的请求将被发送到服务器。不同之处在于客户端。如果使用异步(建议用于AJAX),客户端浏览器在执行请求期间不会冻结,send
方法将立即返回。一旦服务器上的执行完成,您将调用您订阅的回调。
如果将参数设置为false
,send
方法将在整个执行服务器请求期间阻止并冻结客户端浏览器。这完全违背了AJAX的全部目的,但有些人想要在成功回调之外使用请求的结果。不要犯同样的错误。
我强烈建议您始终使用异步AJAX请求(true
)而不是阻止调用。