ajax使用流程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Ajax使用规范
1.对ajax的理解
异步javascript+xml
通过AJAX,使用JavaScript 的XMLHttpRequest对象来直接与服务器进行通信。
通过这个对象JavaScript可在不重载页面的情况与Web 服务器交换数据。
AJAX在浏览器与Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页从服务器请求少量的信息,而不是整个页面。
2.ajax操作流程:
首先你得定义一个全局变量来保存XMLHttpRequest对象,
如:varxmlHttp;
然后写一个函数用来创建XMLHttpRequest对象,functioncreateXMLHttpRequest(){
if(window.ActiveXObject){ //这个是创建一个IE浏览器的XMLHttpRequest对象;xmlHttp=new ActiveXObject('Microsoft.XMLHTTP');
}else{//这个是创建一个其它浏览器的XMLHttpRequest对象;
xmlHttp=new XMLHttpRequest();
}
}
再然后定义一个回调函数,用于处理你想处理的数据;functionhandleStateChang(){
if(xmlHttp.readyState==4){
if(xmlHttp.status==200){
//在这里写你要做的实现的功能,这里只是给一个简单的例子
alert("OK");//弹出一个消息
}
}
}
然后再定义一个函数用于与服务器端进行通信;
function doSearch(){//创建XMLHttpRequest对象;
createXMLHttpRequest();
//将回调函数赋值给XMLHttpRequest对象的onreadystatechang方法;xmlHttp.onreadystatechang=handleStateChang;
//调用XMLHttpRequest对象的open方法,并且给定相关参数
xmlHttp.open("GET","dynamicContent.xml",true);
xmlHttp.send(null);
}
然后在你要用的页面当中的某个地方调用doSearch()方法就行了;
例如:
<input type="button" value="Search" onclick="doSearch();"/>
3.课堂理解
1).第一步:写一个函数用来创建ajax对象,即我们课堂上创建的ajax.js文件,作用是用于创建ajax对象,给我们后面的项目提供获取方法,如:functiongetXhr(){
varxhr=null;
if(window.XMLHttpRequest){//针对不同浏览器需求
xhr=new XMLHttpRequest();
}else{
xhr=new ActiveXobject('MicroSoft.XMLHttp');//因可能是IE启用
}
returnxhr;
}
2).第二步:获取ajax对象,创建引用方法或者说需发生事件,如:
1.function check_uname(){//使用get方法
varxhr=getXhr();//1.获取ajax对象
varuri='check_uname.do?username='+$F('username');//定义uri的值
xhr.open('get',encodeURI(uri),true);//2.发送请求
xhr.onreadystatechange=function(){//3.绑定事件处理函数
if(xhr.readyState==4&&xhr.status==200){
var txt=xhr.responseText;
$('username_msg').innerHTML=txt; }
};
xhr.send(null);//4.发送函数
}
2.function check_uname(){//使用post方法
//1.获取ajax对象
varxhr=getXhr();
//2.发送请求
xhr.open('post','check_uname.do',true);
//设置消息头,规定接收已
xhr.setRequestHeader('content-type','application/x-www-form-urlencoded');
xhr.onreadystatechange=function(){//3.绑定事件处理函数
if(xhr.readyState==4&&xhr.status==200){
var txt=xhr.responseText;
$('username_msg').innerHTML=txt;}
};
xhr.send('username='+$F('username'));//发送函数
}
综上,主要步骤为:
1.创建AJAX对象
2.通过open()方法设置AJAX对象发请求前的必要数据
3.指定事件响应的方法
4.调用send()方法发起请求
其中需注意:
xhr.open('使用方法','URI',同步异步);
使用方法有’get’,’post’两种;
异步用true,同步用false
3).第三步引用:
在要用的页面当中的某个地方调用check_uname()方法就行了,如:<input type="button" value="name" onclick="check_name();"/>。