AJAX:技术:实现js与java之间实现数据交互
dhtml+XmlHttpRequest对象
html+css+js+dom + XmlHttpRequest对象
Asynchronized java and xml:技术
>实现效果:异步交互:请求和响应不同步
>实现效果:局部刷新:没有刷新页面 而是刷新了页面中某个元素的内容
原生态的ajax:
1:获取XMLHttpRequest对象
1.1 大部分浏览器:new XMLHttpRequest()
1.2 ie5及其以下:new ActiveXObject("Microsoft.XMLHTTP")
1.3 ie6及其以上:new ActiveXObject("Msxml2.XMLHTTP")
2:调用XMLHttpRequest对象的open方法 开启连接
XMLHttpRequest.open(arg1,arg2,arg3)
arg1:请求方式:GET POST
arg2:请求的url
arg3:是否异步
3:调用XMLHttpRequest对象的send方法 发送数据
send(arg)
arg:请求参数:格式:参数名=参数值&参数名=参数值
注意:get请求 arg是null(请求参数写在url后面)
post请求 arg是请求参数
4:监听XMLHttpRequest对象的onreadystatechange事件
获取响应
XMLHttpRequest.onreadystatechange=function(){
//判断XMLHttpRequest的状态:XMLHttpRequest.state
// 0 :只创建 未连接
// 1 : 已连接 未请求
// 2 : 已请求 未处理
// 3 : 处理过程中
// 4 : 处理完毕 响应成功
}
案例1: 输入性别 进行服务器端验证
//获取name="age"的值
var value=oAge.value;
//把value通过ajax发送给servlet
//1 获取XMLHttpRequest对象
var xhr;
try{
xhr=new XMLHttpRequest();//大部分浏览器获取对象
}catch(e){
try{
xhr=new ActiveXObject("Microsoft.XMLHTTP"); //ie5及其以下
}catch(e){
xhr=new ActiveXObject("Msxml2.XMLHTTP");//ie6及其以下
}
}
//2 开启连接
xhr.open("GET","<c:url value='/ajax/s1?age="+value+"'/>",true);
//3 发送请求
xhr.send(null);
//4 监听事件onreadystatechange
xhr.onreadystatechange=function(){
//获取xhr的状态 判断是否为4 //判断响应状态码是不是200
if(xhr.readyState==4&&xhr.status==200){
var message=xhr.responseText;//获取响应数据
//把信息显示到psan中
document.getElementById("span_age").innerHTML=message.fontcolor("red");
}
}
AJAX:技术:实现js与java之间实现数据交互
最新推荐文章于 2022-04-20 11:15:30 发布