欢迎来到天天文库
浏览记录
ID:30779803
大小:108.00 KB
页数:8页
时间:2019-01-03
《javascriptajax编程应用篇_javascript技巧》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、JavaScriptAjax编程应用篇一、Ajax(AsynchronousJavaScript+XML)能够像服务器请求额外的数据而无需卸载页面,即局部刷新技术二、创建一个XHR对象functioncreateXHR(){if(typeofXMLHttpRequest!=,zundefined,z){returnnewXMLHttpRequest();}elseif(typeofActiveXObject!二"undefined"){//2、activcXString!="string〃){varversion=[,ZMSXML2.XMLHttp.6.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp"],i,len;for(i二0,len=version,length;i3、XObject(arguments,callee.activeXString);}else{thrownewError(z,NoSupportForXHR〃);}}varxhr=createXHR();alert(xhr);//[objectXMLHttpRequest]三、用法注意:本节的实例都应用于服务器端1.调用open()方法。它接受3个参数:要发送的请求的类型(〃英t〃、〃post〃等)、请求的URL和表示是否异步发送请求的布尔值。2.要发送请求,调用send()方法,接受一个参数,即要作4、为请求发送的主体。如果不需要,则为null3.返回的数据会自动填充到XHR对象的属性中。varxhr=createXHR();//GET方式同步打开example,txt文件//同步:javascript代码会等待服务器响应后执行xhr.open("get","example・txt",false);xhr・send(null);//status代表响应的http状态//200代表ok,304表示缓存if((xhr.status>二200&&xhr.status<300)5、6、xhr.status二二7、304){alert(xhr.responseText);//返回响应的文本,123456}else{alert("'Requestwasunsuccessful:"+xhr.status);}1.example,text文件内容为字符串:123456四、前面的使用的同步的方式,当然不会存在问题,所有我们要挑战一个异步的方法。varxhr=createXHRO;//xhr.readyState示请求/响应的当前状态,4代表已经接受了全部的响应数据//另外只要xhr.readyState的值发生了改变8、,那么xhr.onrcadystatcchangc事件就会触发xhr.onreadystatechange=function(){if(xhr.readyState二二4){if((xhr.status>二200&&xhr.status<300)9、10、xhr.status二二304){alert(xhr・rcsponscTcxt);}else{alert(''Requestwasunsuccessful:"+xhr.status);}}};xhr.open("get","example.txt",tr11、ue);xhr.send(null);五、每个HTTP请求和响应都会带有相应的头部信息1・默认情况下,在发送XIIR请求的同时,还会发送下列头部信息。©Accept:浏览器能够处理的内容类型。②Accept-Charset:浏览器能够显示的字符集。③Accept-Encoding:浏览器能够处理的压缩编码。④Accept-Language:浏览器当前设置的语言。⑤Connection:浏览器与服务器之间连接的类型。⑥Cookie:当前页面设置的任何Cookieo⑦Host:发岀请求的页面所在的域。⑧12、Referer:发出请求的页面的URI。⑨User-Agent:浏览器的用户代理字符串。2.使用setRequestlleader()方法可以设置自定义的请求头部信息。接受两个参数:头部字段的名称和头部字段的值varxhr=createXHRO;//xhr.readyState示请求/响应的当前状态,4代表已经接受了全部的响应数据//另外只要xhr.readyState的值发生了改变,那么xhr.onreadystatechange事件就会触发xhr.onreadys
2、activcXString!="string〃){varversion=[,ZMSXML2.XMLHttp.6.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp"],i,len;for(i二0,len=version,length;i3、XObject(arguments,callee.activeXString);}else{thrownewError(z,NoSupportForXHR〃);}}varxhr=createXHR();alert(xhr);//[objectXMLHttpRequest]三、用法注意:本节的实例都应用于服务器端1.调用open()方法。它接受3个参数:要发送的请求的类型(〃英t〃、〃post〃等)、请求的URL和表示是否异步发送请求的布尔值。2.要发送请求,调用send()方法,接受一个参数,即要作4、为请求发送的主体。如果不需要,则为null3.返回的数据会自动填充到XHR对象的属性中。varxhr=createXHR();//GET方式同步打开example,txt文件//同步:javascript代码会等待服务器响应后执行xhr.open("get","example・txt",false);xhr・send(null);//status代表响应的http状态//200代表ok,304表示缓存if((xhr.status>二200&&xhr.status<300)5、6、xhr.status二二7、304){alert(xhr.responseText);//返回响应的文本,123456}else{alert("'Requestwasunsuccessful:"+xhr.status);}1.example,text文件内容为字符串:123456四、前面的使用的同步的方式,当然不会存在问题,所有我们要挑战一个异步的方法。varxhr=createXHRO;//xhr.readyState示请求/响应的当前状态,4代表已经接受了全部的响应数据//另外只要xhr.readyState的值发生了改变8、,那么xhr.onrcadystatcchangc事件就会触发xhr.onreadystatechange=function(){if(xhr.readyState二二4){if((xhr.status>二200&&xhr.status<300)9、10、xhr.status二二304){alert(xhr・rcsponscTcxt);}else{alert(''Requestwasunsuccessful:"+xhr.status);}}};xhr.open("get","example.txt",tr11、ue);xhr.send(null);五、每个HTTP请求和响应都会带有相应的头部信息1・默认情况下,在发送XIIR请求的同时,还会发送下列头部信息。©Accept:浏览器能够处理的内容类型。②Accept-Charset:浏览器能够显示的字符集。③Accept-Encoding:浏览器能够处理的压缩编码。④Accept-Language:浏览器当前设置的语言。⑤Connection:浏览器与服务器之间连接的类型。⑥Cookie:当前页面设置的任何Cookieo⑦Host:发岀请求的页面所在的域。⑧12、Referer:发出请求的页面的URI。⑨User-Agent:浏览器的用户代理字符串。2.使用setRequestlleader()方法可以设置自定义的请求头部信息。接受两个参数:头部字段的名称和头部字段的值varxhr=createXHRO;//xhr.readyState示请求/响应的当前状态,4代表已经接受了全部的响应数据//另外只要xhr.readyState的值发生了改变,那么xhr.onreadystatechange事件就会触发xhr.onreadys
3、XObject(arguments,callee.activeXString);}else{thrownewError(z,NoSupportForXHR〃);}}varxhr=createXHR();alert(xhr);//[objectXMLHttpRequest]三、用法注意:本节的实例都应用于服务器端1.调用open()方法。它接受3个参数:要发送的请求的类型(〃英t〃、〃post〃等)、请求的URL和表示是否异步发送请求的布尔值。2.要发送请求,调用send()方法,接受一个参数,即要作
4、为请求发送的主体。如果不需要,则为null3.返回的数据会自动填充到XHR对象的属性中。varxhr=createXHR();//GET方式同步打开example,txt文件//同步:javascript代码会等待服务器响应后执行xhr.open("get","example・txt",false);xhr・send(null);//status代表响应的http状态//200代表ok,304表示缓存if((xhr.status>二200&&xhr.status<300)
5、
6、xhr.status二二
7、304){alert(xhr.responseText);//返回响应的文本,123456}else{alert("'Requestwasunsuccessful:"+xhr.status);}1.example,text文件内容为字符串:123456四、前面的使用的同步的方式,当然不会存在问题,所有我们要挑战一个异步的方法。varxhr=createXHRO;//xhr.readyState示请求/响应的当前状态,4代表已经接受了全部的响应数据//另外只要xhr.readyState的值发生了改变
8、,那么xhr.onrcadystatcchangc事件就会触发xhr.onreadystatechange=function(){if(xhr.readyState二二4){if((xhr.status>二200&&xhr.status<300)
9、
10、xhr.status二二304){alert(xhr・rcsponscTcxt);}else{alert(''Requestwasunsuccessful:"+xhr.status);}}};xhr.open("get","example.txt",tr
11、ue);xhr.send(null);五、每个HTTP请求和响应都会带有相应的头部信息1・默认情况下,在发送XIIR请求的同时,还会发送下列头部信息。©Accept:浏览器能够处理的内容类型。②Accept-Charset:浏览器能够显示的字符集。③Accept-Encoding:浏览器能够处理的压缩编码。④Accept-Language:浏览器当前设置的语言。⑤Connection:浏览器与服务器之间连接的类型。⑥Cookie:当前页面设置的任何Cookieo⑦Host:发岀请求的页面所在的域。⑧
12、Referer:发出请求的页面的URI。⑨User-Agent:浏览器的用户代理字符串。2.使用setRequestlleader()方法可以设置自定义的请求头部信息。接受两个参数:头部字段的名称和头部字段的值varxhr=createXHRO;//xhr.readyState示请求/响应的当前状态,4代表已经接受了全部的响应数据//另外只要xhr.readyState的值发生了改变,那么xhr.onreadystatechange事件就会触发xhr.onreadys
此文档下载收益归作者所有