1.AJAX概述
异步请求,局部刷新
改变了浏览器同步请求,全部刷新的特点,利用AJAX技术,实现在不影响浏览器的情况下异步发送请求,获取到数据后,局部更新浏览器页面。
AJAX并不是一项新的技术,而是对已有的技术的整合运用,包括 JavaScript、xml、html、css....
2.实现AJAX:
(1)创建XMLHttpRequest对象
function ajaxFunction(){
var xmlHttp;
try{ // Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e){
try{// Internet Explorer
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e){
try{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e){}
}
}
return xmlHttp;
}
(2)注册监听
var data = null;
var xhr = ajaxFunction();
xhr.onreadystatechange=function(){
if(xhr.readyState==4){
if(xhr.status==200||xhr.status==304){
data = xhr.responseText;
…..
}
}
}
(3)客户端与服务器端建立连接
xhr.open("GET","http://localhost/Day07/servlet/AjaxDemo1?username=tom&age=19",true);
xhr.open("POST","http://localhost/Day07/servlet/AjaxDemo1",true);
(4)发送请求
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");//通知服务器当前发送的数据时表单数据,请将实体内容中的值当做请求参数来处
~GET请求:
xhr.send(null);
~POST请求:
xhr.send("username=tom&age=19");
**注意!!!!AJAX发送的请求参数必须手动的进行URL编码操作。