首先我们得明白ajax只是一种技术,是为了解决用户与网页互动之间的问题,举个例子来说,我们所使用的新浪微博,当我们写出一条评论时,点击提交,我们立马就能看到评论,但是整个网页并没有刷新,而只是局部刷新。还有另外一个例子就是我们所使用的搜索引擎,当我们输入“周...",搜索引擎会自动识别出”周杰伦“...等等相关字段;
其次这之间涉及到的无非就是后台和服务器之间的数据交换,而起到桥梁作用的就是XMLHttpRequest 对象,这个对象提供了open()和send()方法
方法 | 描述 |
open(method,url,async) | 规定请求的类型、URL 以及是否异步处理请求。
|
send(string) | 将请求发送到服务器。
|
经过上面的几步,我们的请求已经被发送出去,那么接下来就是服务器的响应了,我后台当然需要知道服务器到底响没响应,如何获取响应状态就需要使用 XMLHttpRequest 对象的 responseText 或 responseXML 属性。
属性 | 描述 |
responseText | 获得字符串形式的响应数据。(非XML响应) |
responseXML | 获得 XML 形式的响应数据。 (XML响应) |
最后得到响应或者没有得到响应,我们后台都需要执行一些基于响应的任务。这里涉及到XMLHttpRequest 对象的三个重要的属性:
onreadystatechange | 存储函数(或函数名),每当 readyState 属性改变时,就会调用该函数。 |
readyState | 存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。
|
status | 200: "OK" 404: 未找到页面 |