# 05.Ajax简介
# 1.定义
Ajax
即“Asynchronous Javascript And XML”(异步 JavaScript
和 XML
),是一种无需重新加载整个网页的情况下,能够更新部分网页的技术。
通过在后台与服务器进行少量数据交换,Ajax
可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
# 2.Ajax 基本使用的四大步骤,简单易懂
**第一步,**创建xmlhttprequest
对象,XMLHttpRequest
对象用来和服务器交换数据。
var xmlhttp =new XMLHttpRequest();
1
第二步,使用xmlhttprequest
对象的open()
和send()
方法发送资源请求给服务器。
xmlhttp.open(method,url,async)
//例如
xmlhttp.open(get, 'http://193.168.22.11:8000', true)
1
2
3
2
3
method
包括get
和post
,url
主要是文件或资源的路径,async
参数为true
(代表异步)或者false
(代表同步)
第三步,使用xmlhttprequest
对象的responseText
或responseXML
属性获得服务器的响应。
第四步,onReadyStateChange
函数,当发送请求到服务器,我们想要服务器响应执行一些功能就需要使用onReadyStateChange
函数,每次xmlhttprequest
对象的readyState
发生改变都会触发onReadyStateChange
函数。
readyState
属性,XMLHttpRequest
对象的状态,改变从0
到4
,0
代表请求未被初始化,1
代表服务器连接成功,2
请求被服务器接收,3
处理请求,4
请求完成并且响应准备。
/** 1. 创建连接 **/
var xhr = null;
xhr = new XMLHttpRequest()
/** 2. 连接服务器 **/
xhr.open('get', url, true)
/** 3. 发送请求 **/
xhr.send(null);
/** 4. 接受请求 **/
xhr.onreadystatechange = function(){
if(xhr.readyState == 4){
if(xhr.status == 200){
success(xhr.responseText);
} else {
/** false **/
fail && fail(xhr.status);
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18