1.AJAX即“Asynchronous,Javascript+XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。
AJAX=异步JavaScript和XML(标准通用标记语言的子集)。
AJAX是一种用于创建快速动态网页的技术。
通过在后台与服务器进行少量数据交换,AJAX可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页 的某部分进行更新。
传统的网页(不使用AJAX)如果需要更新内容,必须重载整个网页面。
AJAX不是新的编程语言,而是一种使用现有标准的新方法。
2.Ajax XHR创建对象:XMLHttpRequest对象 用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
var xmlhttp;
if(window.XMLHttpRequest)
{//code for ie7+,firefox,chorme,opera,safari
xmlhttp=new XMLHttpRequest();
}
else
{//code for ie6,ie5
xmlhttp=new ActiveXobject("Microsoft.XMLHttp");
}
3.Ajax XHR请求——向服务器发送请求。但你的页面全部加载完成后,客户端会通过XMLHttpRequest对象向服务器请求数据,服务器端接受数据并处理后,向客户端反馈数据。
(1)向服务器发送请求:使用xmr对象的open()和send()方法
xmlhttp.open("method,url,async) 规定请求的类型、URL以及是否异步处理请求。
---method:请求的类型get或post;url:文件在服务器上的位置;async:true(异步)或false(同步)。
xmlhttp.send(string)将请求发送到服务器。
---string:仅用于post请求。
(2)get or post?——通常用get,get较快;post没有数据量限制。
(3)异步?同步?
4.AJXA XHR响应
responseText 获得字符串形式的响应数据
responseXML 获得XML形式的响应数据
5.AJAX-onreadystatechange事件,捕获请求的状态,继而实现响应
属性 | 描述 |
---|---|
onreadystatechange | 存储函数(或函数名),每当ready State属性改变时,就会调用该函数。 |
readyState | 存有XML HttpRequest的状态。从0到4发生变化。 0:请求未初始化(还没调用open()) 1:服务器连接已建立(还没发送,还没调用send()) 2:请求已接收(通常现在可以从响应中获取内容头) 3:请求处理中(通常响应中有部门数据可用了,没有全部完成) 4:请求已完成,且响应已就绪 |
status | 200:"OK" 404:未找到页面 |