【问题标题】:AJAX load function not working in IE10AJAX 加载功能在 IE10 中不起作用
【发布时间】:2014-01-28 19:12:51
【问题描述】:

我刚刚完成了我的第一个 AJAX 请求,并让它在 Google、Safari Firefox ETC 中运行。这是非常基本的,只是调用一个带有随机结果的 PHP 查询并在 DIV 中显示它。然后我在 IE10 中测试了它,AJAX 不起作用。当我刷新页面时,我得到一个新结果,但 3 秒后它没有刷新。这是代码

$(function() {
    getStatus();
});

function getStatus() {
    $('div#status').load('thankyou.php')
    setTimeout("getStatus()",3000);
    setTimeout(function(){$("getstatus").html(getStatus)},3000);
}

我一直在寻找答案并得到了

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9" >

在我的头和头之间。它解决了我在使用 jquery rotator 而不是 AJAX 时遇到的另一个问题。是我的代码还是 IE10?以及任何已知的解决方案?

【问题讨论】:

  • $("getstatus") 应该选择什么?
  • 按键盘上的“F12”清除缓存,在缓存选项卡下选择“始终从服务器刷新”
  • 感谢 DownMaster,这对我有用。关于如何让它为其他用户工作的任何想法?
  • load('thankyou.php?12894189047190') 其中数字是时间戳可能适合您
  • 粉碎,谢谢,我想我理解了思考过程,但没有在另一台计算机上工作。如果我发现了什么,会继续在这里查找和更新。

标签: php ajax internet-explorer-10


【解决方案1】:

感谢 Crush 和 DownMaster,我以不同的方式看待问题。通过防止 AJAX 页面被缓存似乎可以使其工作,添加 $.ajaxSetup({cache: false}); 可以防止缓存。

$(function() {
getStatus();
});
function getStatus() {
$.ajaxSetup({ cache: false });//prevents the AJAX cache.
$('div#status').load('thankyou.php')
setTimeout("getStatus()",3000);
setTimeout(function(){$("getstatus").html(getStatus)},3000);
} 

【讨论】:

    猜你喜欢
    • 2014-07-29
    • 1970-01-01
    • 2013-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多