AJAX :Asynchronous JavaScript And XML
Ajax是基于服务器的页面异步处理技术,实现网页局部刷新的功能,当前页面发送一个请求给服务器,当前页面不需要等待服务器响应才能操作网页。发送完请求之后,当前页面可以继续浏览,操作。 AJAX在应用程序跟服务器之间引入了一个中间层ajax引擎,用JavaScript编写,在一个隐藏的框架中运行。Ajax引擎负责呈现用户界面,以及代表用户跟服务器交互。
应用模型
传统的WEB应用模型
AJAX工作机制
AJAX编码步骤 1、创建XmlHttpRequest对象() 2、注册状态监控回调函数 3、建立与服务器的异步连接 4、发出异步请求
window.onload=init; function init() { var nameinputbox =document.getElementsByTagName("input")[0]; //绑定函数 nameinputbox.onblur=checkname; } function checkname( ) { var xhr = new XMLHttpRequest( ); var nameinputbox =document.getElementsByTagName("input")[0]; //回调函数 xhr.onreadystatechange = function() { //请求正常 if(xhr.readyState==4) {//服务器响应正常 if(xhr.status=200) {//拿到响应结果 var resultspan =document.getElementById("usernameInfo"); /* 服务器返回数据格式 HTML片段 JSON格式的数据 XML格式的数据*/ if(xhr.responseText== "true") { usernameInfo.innerHTML=" 用户名ok"; }else { usernameInfo.innerHTML="fail"; } } } }; //创建连接 xhr.open("get", "/Day23_AJAXDemo/servlet/CheckUsernameServlet?username="+nameinputbox.value,true); //发送请求 xhr.send(null); }XmlHttpRequest 属性 readyState:类型short;只读 responseText:类型String;只读 responseXML:类型Document;只读 status:类型short;只读 方法: open() send() setRequestHeader() 事件处理器 onreadystatechange open(method,url, asynch):method表示HTTP调用方法,一般使用”GET”,”POST”,url表示调用的服务器的地址asynch表示是否采用异步方式,true表示异步,一般这个参数不写,GET方式提交,数据在URL上,POST方式提交 xmlHttp.setRequestHeader(“CONTENT-TYPE”,”application/x-www-form-urlencoded”); xmlHttp.send(“name=xxx&pwd=xxx”);