Ajax 异步javascript和xml
创建交互式网页的网页技术。
1通过客户端和服务器做数据的交换,ajax可以实现异步的刷新,局部刷新。动态更新局部内容时,不用更新整个页面。
2传统网页如果更新局部内容,必须刷新整个网页。
3独立于web服务器端的浏览器技术。
同步:请求>服务器处理>响应。页面上在这个期间不能做其操作,必须等该请求响应完成才能做其他操作。
异步:请求>服务器处理(浏览器可以处理其他业务)>响应。
Xmlhttp:微软提出的一个技术,开发中自带http、xml访问服务器
通过这个对象获取到服务器响应的数据,通过JavaScript将数据显示出来。
Activexobject:微软提供,针对ie5、6 以后的版本按照标准dom进行编写。
XMLHttpRequest:标准dom浏览器实现异步请求的重要对象,功能上和xmlhttp是非常相似的。代理关系,XMLHttpRequest是xmlhttp的代理对象,在使用过程中方法和属性保持一致。但是有些小的区别。
操作步骤:
1、产生xmlhttp对象
Var xmlhttp;
判断是否是标准的dom浏览器
If(window.xmlhttprequest){
Xmlhttp-new xmlhttprequest(); 标准dom浏览器
}else{
Xmlhttp=new activexobject(“Microsoft.xmlhttp”);ie浏览器
}
2、发送请求
Var url=”访问地址”。
建立连接。
Xmlhttp.open(“psot”,url,true)//第一个参数是请求方法,第二个参是url、第三个参是否是异步。(true代表异步/false同步)。
Xmlhttp.SetRequestHeader(“Context-Type”,”application/x-www-form-urlencoded;charset=utf-8”);设置请求编码集。
和服务器通信。
Xml.send(“username=xiaowang”);
3接收响应,监控状态码
Xmlhttp.onreadystatechange=function(){
//状态码为200,表示请求成功。Readystates表示对象状态(0 未开始 1 读取中 2已读取 3交互中 4 完成)
If(xmlhttp.status == 200 && xmlhttp.readyState == 4){
}
}
Javaserlvet操作
Jsonobject obj = new Jsonobject();
obj = obj.fromobject(java对象/ map 集合);将javabean转换成 json字符串
Jsp页面操作
Var jonss= 对象.ResponseText ;获取服务器发送的文本内容
Var jbean=Json.parse(jonss) 将json字符串 转换成json对象。
Jsonarray jarry=new Jsonarray();
fromobject(集合);
Ajax请求会回到请求页面。
Jquery 操作ajax
Function Method(..,..,..){
$.ajax({
Type:”post” , //方法类型
Url:””,//提交的url地址
Async:true,//异步/同步
Data:{“key”:value,”key”: value},
Success:function(obj){ //回调函数
//响应代码。
}
});
}
responseXML 返回xml文档对象
Status text 服务器返回的状态文本信息
Abort 停止当前请求