文档详情

XMLHttpRequest对象详解.doc

发布:2016-04-02约6.62千字共7页下载文档
文本预览下载声明
? AJAX大家已经都知道了,是为了实现异步通讯,提高用户体验度,而将很多旧知识(XML,DOM,JavaScript,HTML,Jquery,Css……)重新融合的一个新的知识框架。而,XMLHttpRequest对象则是其中的重重之中。这篇博客重点总结一下这个对象的使用。当然还是按照经典的五步法来学习,以后在实践中有更多更好的想法,会拿出来分享的! ? ? ? ? ? ?首先,需要先了解这个对象的属性和方法: 属性 说明 readyState 表示XMLHttpRequest对象的状态:0:未初始化。对象已创建,未调用open; 1:open方法成功调用,但Sendf方法未调用; 2:send方法已经调用,尚未开始接受数据; 3:正在接受数据。Http响应头信息已经接受,但尚未接收完成; 4:完成,即响应数据接受完成。 Onreadystatechange 请求状态改变的事件触发器(readyState变化时会调用这个属性上注册的javascript函数)。 responseText 服务器响应的文本内容 responseXML 服务器响应的XML内容对应的DOM对象 Status 服务器返回的http状态码。200表示“成功”,404表示“未找到”,500表示“服务器内部错误”等。 statusText 服务器返回状态的文本信息。 方法 说明 Open(string method,string url,boolean asynch, String username,string password) 指定和服务器端交互的HTTP方法,URL地址,即其他请求信息; Method:表示http请求方法,一般使用GET,POST. url:表示请求的服务器的地址; asynch:表示是否采用异步方法,true为异步,false为同步; 后边两个可以不指定,username和password分别表示用户名和密码,提供http认证机制需要的用户名和密码。 Send(content) 向服务器发出请求,如果采用异步方式,该方法会立即返回。 content可以指定为null表示不发送数据,其内容可以是DOM对象,输入流或字符串。 SetRequestHeader(String header,String Value) 设置HTTP请求中的指定头部header的值为value. 此方法需在open方法以后调用,一般在post方式中使用。 getAllResponseHeaders() 返回包含Http的所有响应头信息,其中相应头包括Content-length,date,uri等内容。 返回值是一个字符串,包含所有头信息,其中每个键名和键值用冒号分开,每一组键之间用CR和LF(回车加换行符)来分隔! getResponseHeader(String header) 返回HTTP响应头中指定的键名header对应的值 Abort() 停止当前http请求。对应的XMLHttpRequest对象会复位到未初始化的状态。 ? ? ? ? ??对这个对象有了静态了了解,知道它长的什么样子,有什么功能了,下边该我们使用它了,当然这里我也用五步法写出代码来: 第一步:创建XMLHttpRuquest对象: [javascript] view plaincopyprint? var?xmlhttprequest;?? ???if(window.XMLHttpRequest){?? ???????xmlhttprequest=new?XMLHttpRequest();?? ???????if(xmlhttprequest.overrideMimeType){?? ???????????xmlhttprequest.overrideMimeType(text/xml);?? ???????}?? ???}else?if(window.ActiveXObject){?? ???????var?activeName=[MSXML2.XMLHTTP,Microsoft.XMLHTTP];?? ???????for(var?i=0;iactiveName.length;i++){?? ???????????try{?? ???????????????xmlhttprequest=new?ActiveXObject(activeName[i]);?? ???????????????break;?? ???????????}catch(e){?? ???????????????????????? ???????????}?? ???????}?? ???}?? ????? ???if(xmlhttprequest==undefined?
显示全部
相似文档