标签:
ajax是什么
全称Asynchronous Javascript and XML(异步javascript和XML);它的出现揭开了无刷新更新页面的新时代;
ajax的5种状态
1.(0未初始化)还没有调用send()方法;
此阶段确认XMLHttpRequest对象是否创建,并为调用open()方法进行未初始化作好准备。值为0表示对象已经存在,否则浏览器会报错--对象不存在。
2.(1载入)已调用send()方法,正在发送请求;
此阶段对XMLHttpRequest对象进行初始化,即调用open()方法,根据参数(method,url,true)完成对象状态的设置。并调用send()方法开始向服务端发送请求。值为1表示正在向服务端发送请求。
3.(2载入完成)send()方法执行完成,已经接收到全部响应内容;
此阶段接收服务器端的响应数据。但获得的还只是服务端响应的原始数据,并不能直接在客户端使用。值为2表示已经接收完全部响应数据。并为下一阶段对数据解析作好准备。
4.(3交互)正在解析相应内容;
此阶段解析接收到的服务器端响应数据。即根据服务器端响应头部返回的MIME类型把数据转换成能通过responseBody、responseText或responseXML属性存取的格式,为在客户端调用作好准备。状态3表示正在解析数据。
5.(4完成)响应内容解析完成,可以在客户端调用了;
此阶段确认全部数据都已经解析为客户端可用的格式,解析已经完成。值为4表示数据解析完毕,可以通过XMLHttpRequest对象的相应属性取得数据。
/*声明用来装入XMLHttpRquest对象*/ var xhr; /*if ie5-ie6以ActiveXObject方式引入XMLHttpRequest对象; else windowsde的子对象; */ if(window.ActiveXObject){ xhr=new Active XObject("Miceosoft.XMLHTTP"); }else{ xhr=new XMLHttpRequest(); } /*实例化成功后,open()方法初始化XMLhHttpRequest对象,指定HTTP方法和使用的服务器url*/ xhr.open("GET","test.php",true)
xhr.open(‘post‘,‘test.php‘,true);/*注册XMLhHttpRequest对象回调函数,当readyState值改变时,激发onreadystatechange事件*/ xhr.onreadystatechange=RequestCallBack; /*使用send()方法发送请求,get方式参数可以为空*/ xhr.send(null)
xhr.send(‘name1=value1&name2=value2‘); /*请求状态改变时,调用RequestCallBack,当readystate=4并且http状态200,执行*/ function RequestCallBack(){ if(xhr.readyState==4){ if(xhr.status==200){ //xhr.responseText; } } }
jquery中的ajax
标签:
原文地址:http://www.cnblogs.com/bais/p/4702765.html