ajax问题总结比较全

ajax问题总结比较全

ID:35294136

大小:24.95 KB

页数:13页

时间:2019-03-23

ajax问题总结比较全_第1页
ajax问题总结比较全_第2页
ajax问题总结比较全_第3页
ajax问题总结比较全_第4页
ajax问题总结比较全_第5页
资源描述:

《ajax问题总结比较全》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、基本的============================================1,最经典的就是ie下的缓存问题了。如果使用的是get,那么在ie下出现缓存问题。导致代码只执行一次。解决办法就是加时间戳或者随机数,使url变为唯一,这样就不会出现ie下的缓存问题了,或者改为post提交。xhr.open("get","xxxx.aspx?_dc="+newDate().getTime(),true);2,ajax对象属性的大小写问题在w3c浏览器,如ff中,对大小写是敏感。如if(xhr.readystate==4

2、)这种写法,在ie下是成立的,但是在ff下就行不通了,因为ie不区分大小写,ff是区分大小的。标准写法为if(xhr.readyState==4),同理还有属性responseText,responseXML,status。还有状态转换函数xhr.onreadystatechange,要注意全部为小写3,ajax状态0问题有些时候在测试ajax代码的时候,加了xhr.status==200的判断后,一直不执行xhr.status==200的代码,这个就需要注意了。xhr.status==200是要通过服务器来浏览,并且服务器页面

3、没有发生错误或者转向时才返回200状态的,此状态和你通过浏览器访问页面时服务器定义的状态一致。直接拖进浏览器浏览结果或者双击运行html页面的,未发生错误时,此时的xhr.status是0,不是200。所以可以多加一个xhr.status==0的判断。如下复制代码代码如下:if(xhr.status==200

4、

5、xhr.status==0){alert('ok');}直接拖进浏览器浏览结果或者双击运行html页面时,又出现一个问题,如果请求的是xml文件,那想当然的是使用responseXML属性返回xmlDom了,但是在ie返

6、回不了xmlDom属性,解决办法如何呢,看下面的responseXML问题。4,responseXML问题。要使用responseXML属性,请求的是xml文件或者设置了响应头为"text/xml"的动态页面了。要注意如果请求的是动态页面,一定不要忘记设置contenttype为"text/xml"!!!!!!!!切记~~~~~~asp为response.contenttype="text/html"asp.net为Response.ContentType="text/html";php为header("content-type

7、:text/xml;");在ie下有个问题,直接拖进浏览器浏览或者双击运行html预览效果时,请求的即使是xml文件,使用responseXML返回不了xmldom。大家测试下就知道了,如下showbo.xml复制代码代码如下:1item>2item>3item>4item>test.html复制代码代码如下:functiongetajax(){if(window.XMLHttpRequest)returnnewXMLHttpRequest();e

8、lseif(window.ActiveXObject)returnnewActiveXObject("microsoft.xmlhttp");}varxhr=getajax();xhr.onreadystatechange=function(){if(xhr.readyState==4){if(xhr.status==200

9、

10、xhr.status==0){vardoc=xhr.responseXML,item=doc.getElementsByTagName("item");alert(item.length);//在ie输出

11、为0,在ff下为4。似乎在ie下未生成xml的树结构,具体原因要问ms了。。}elsealert('发生错误'+xhr.status);}}xhr.open("get","showbo.xml?_dc="+newDate().getTime(),true);xhr.send(null);解决办法就是使用microsoft.xmldom对象重新建立xml的树结构,如下复制代码代码如下:xhr.onreadystatechange=function(){if(xhr.readyState==4){if(xhr.status=

12、=200

13、

14、xhr.status==0){vardoc=xhr.responseXML;if(document.all&&xhr.status==0){//为ie并且直接托进浏览器的时重构xml的树结构doc=newActiveXObject("microsof

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。