ajax是什么
ajax(asynchronous javascript and xml)主要用来实现客户端与服务器端的异步通信,实现页面的局部刷新。
如何创建一个ajax
- 创建XMLHttpRequest
XMLHttpRequest用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。所有现代浏览器均支持XMLHttpRequest对象(IE5和IE6使用ActiveXObject)。
var xhr;
if(window.XMLHttpRequest){
//IE7,chrome,firefox,...
xhr=new XMLHttpRequest();
}else{
//IE5,IE6
xhr=new ActiveXObject("Microsoft.XMLHTTP");
}
- 向服务器发送请求
如需将请求发送到服务器,我们使用XMLHttpRequest对象的open()和send()方法
//一个简单的get请求
xhr.open("GET","ajax_info.txt",true);
xhr.send();
//一个简单的post请求
xhr.open("POST","/try/ajax/demo_post.php",true);
xhr.send();
- 处理服务器响应
当请求被发送到服务器时,我们需要执行一些基于响应的任务。每当readyState改变时,就会触发onreadystatechange事件。readyState属性存有XMLHttpRequest的状态信息。 0:请求未初始化 1:服务器连接已建立 2:请求已接收 3:请求处理中 4:请求已完成,且响应已就绪
xhr.onreadystatechange=function(){
if(xhr.readyState==4 && xhr.status==200){
//responseText获取字符串形式的响应数据,responseXML获取XML形式的响应数据
console.log(xhr.responseText);
}
}