当前位置: 首页 > 面试题库 >

IE9中的AJAX问题?

禹兴安
2023-03-14
问题内容

我已经建立了一个AJAX聊天室;并且它可以在chrome和FF中使用,但当然不能在IE中使用。这是我的代码:

<script language="javascript" type="text/javascript">
<!-- 
//Browser Support Code
function ajaxFunction(){
    var ajaxRequest; 
    try {
      ajaxRequest = new XMLHttpRequest();
    } catch (e) {
      try {
        ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
      } catch (e) {
         try {
           ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
         } catch (e){
           alert("Your browser broke!");
           return false;
     }
  }
    }

    ajaxRequest.onreadystatechange = function(){
      if(ajaxRequest.readyState == 4) {
        var ajaxDisplay = document.getElementById('ajaxDiv');
        ajaxDisplay.innerHTML = ajaxRequest.responseText;
      }
    }

    ajaxRequest.open("GET", "pull.php", true);
    ajaxRequest.send(null);  
}

setInterval( "ajaxFunction()", 1000 );

//-->
</script>

结果永远不会显示。我有一个名为AjaxDiv的div,如果有帮助的话。我究竟做错了什么?这是一个错误吗?


问题答案:

每次发出请求时,都可能要取出缓存的副本。

在服务器上设置正确的缓存头

header( 'Cache-Control: no-store, no-cache, must-revalidate' );
header( 'Pragma: no-cache' );

或将查询字符串附加到get请求中,如下所示

ajaxRequest.open("GET", "pull.php?ts=" + new Date().getTime(), true);


 类似资料:
  • 问题内容: 我正在编写ajax Web应用程序,但是由于任何原因,当我在Internet Explorer 9(IE9)中对内部数据服务执行GET时,它都无法正常工作。同样的调用在Chrome,Firefox和Safari中也可以正常工作。我正在使用本地主机Web服务器(沼泽)进行开发,并且正在与要尝试的数据服务在同一网络上进行开发。我正在使用Jquery 1.8.1(我返回了几个版本,但仍然看到

  • 本文向大家介绍IE9下Ajax无法刷新数据的缓存问题解决方法,包括了IE9下Ajax无法刷新数据的缓存问题解决方法的使用技巧和注意事项,需要的朋友参考一下 使用jQuery的getJSON从后台定时获取数据并刷新界面,使用以下方法时,在Chrome,Firefox下没问题,但在IE9下却无法刷新数据 原因是,在IE9下,进行Ajax请求时,若与之前请求相同,则不会再从浏览器获取数据,而是直接从本地

  • 问题内容: 看来这是一个众所周知的问题,但是我在Google上找到的所有解决方案都不适用于我新下载的IE9。 启用and 标签上的属性的最喜欢的方式是哪种? 可选:我为此花了很多时间,而且还没有去寻找房产。您对此还有意见吗?显然,我可以检查PHP中的值,但是对于帮助用户使用此属性非常方便。 问题答案: HTML5占位符jQuery插件 -通过的Mathias Bynens上协作者HTML5样板和j

  • 问题内容: 我在我的页面上运行了以下jQuery代码,它们在FF和IE中都很好,但是Chrome似乎吓坏了。 在FF和IE中,将进行调用并将结果附加到div。在chrome中,失败时会调用ajaxfailed。 传递给AjaxFailed函数的XMLHttpRequest的状态码为“ 200”,statusText为“ ok”。readystate是4,responseText设置为我希望追加到d

  • 问题内容: 我正在使用此页面 -http : //ecmazing.com/cors.html-向此资源发出跨域Ajax请求: http //hacheck.tel.fer.hr/xml.pl 它适用于Chrome,Safari和Firefox,但不适用于IE9和Opera。 代码: (预期结果是XML代码字符串。) 自己看看: http : //ecmazing.com/cors.html 在I

  • 问题内容: 看来这是一个众所周知的问题,但是我在Google上找到的所有解决方案都不适用于我新下载的IE9。 启用and 标签上的属性的最喜欢的方式是哪种? 可选:我为此花了很多时间,而且还没有去寻找房产。您对此还有意见吗?显然,我可以检查PHP中的值,但是对于帮助用户使用此属性非常方便。 问题答案: HTML5占位符jQuery插件 -通过的Mathias Bynens和jsPerf https