位置:电子教程 > ajax教程 (如果看不到内容请使用360浏览器) 推荐学习资源
AJAX 教程概要
AJAX 工作原理
创建 XMLHttpRequest 对象
XMLHttpRequest请求
XMLHttpRequest 服务器 响应
onreadystatechange 事件
AJAX PHP实例
AJAX 3级联动全国区域
当前阅读教程:ajax教程 > 同步和异步
阅读(22555525)      收藏       赞(5685)      分享
上一篇: POST 请求 下一篇: XMLHttpRequest 服务器 响应

open() 方法的 url 参数是服务器上文件的地址:

xmlhttp.open("GET","ajax_test.html",true);

该文件可以是任何类型的文件,比如 .txt .xml,或者服务器脚本文件,比如 .asp .php (在传回响应之前,能够在服务器上执行任务)。

异步 - True 或 False?

AJAX 指的是异步 JavaScript XMLAsynchronous JavaScript and XML)。

XMLHttpRequest 对象如果要用于 AJAX 的话,其 open() 方法的 async 参数必须设置为 true

xmlhttp.open("GET","ajax_test.html",true);

对于 web 开发人员来说,发送异步请求是一个巨大的进步。很多在服务器执行的任务都相当费时。AJAX 出现之前,这可能会引起应用程序挂起或停止。

通过 AJAXJavaScript 无需等待服务器的响应,而是:

n  在等待服务器响应时执行其他脚本

n  当响应就绪后对响应进行处理

Async=true

当使用 async=true 时,请规定在响应处于 onreadystatechange 事件中的就绪状态时执行的函数:

实例

xmlhttp.onreadystatechange=function()

{

    if (xmlhttp.readyState==4 && xmlhttp.status==200)

    {

        document.getElementById("myDiv").innerHTML=xmlhttp.responseText;

    }

}

xmlhttp.open("GET","ajax01.txt ",true);

xmlhttp.send();

您将在稍后的章节学习更多有关 onreadystatechange 的内容。

 

Async = false

如需使用 async=false,请将 open() 方法中的第三个参数改为 false

xmlhttp.open("GET","test1.txt",false);

我们不推荐使用 async=false,但是对于一些小型的请求,也是可以的。

请记住,JavaScript 会等到服务器响应就绪才继续执行。如果服务器繁忙或缓慢,应用程序会挂起或停止。

注意:当您使用 async=false 时,请不要编写 onreadystatechange 函数 - 把代码放到 send() 语句后面即可:

实例

xmlhttp.open("GET","ajax01.txt",false);

xmlhttp.send();

document.getElementById("myDiv").innerHTML=xmlhttp.responseText;

 


上一篇: POST 请求 下一篇: XMLHttpRequest 服务器 响应
毕业设计网             广告联系QQ:45157718(微信同号)