首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jquery AJAX在IE 7/8上不起作用

Jquery AJAX在IE 7/8上不起作用
EN

Stack Overflow用户
提问于 2009-11-29 05:36:14
回答 6查看 14K关注 0票数 6

我正在尝试调试ajax get/post在IE7/8中不起作用的原因

下面是我的代码:

代码语言:javascript
复制
$.ajax({type: "POST", dataType:'html',url: "/places/set_member/add/",data: "place_id="+place_id ,
                       beforeSend:  function() {$("<span class='notice'>Saving...</span>").prependTo('body');},
                       success: function(){
                        $.ajax({type:"GET",url:url,success:function(html){$('div.place-list .ui-tabs-panel').html(html);},complete:function(){resetAddThis();}})
                       },
               complete: function() {
                            $('span.notice').fadeOut(500);
                $('span.notice').remove();
                            }});

现在,这在FF Safari Win/Mac中运行良好,但在IE 7/8中不起作用

我下载了fiddler并观察了调用,脚本应该将数据发送到服务器,然后重新加载HTML,它现在有新的更新信息。发生的情况是,第一个调用得到错误500,但是,在html重新加载之后,并且再次执行相同的操作,它将以200ms的速度发送,因此它给人一种它没有保存的外观,它只在第二次尝试时才保存。

是不是我做错了什么,或者我需要添加什么?这是一个php循环,所以这个函数被应用于页面上20-30个项目的相同链接。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2009-11-29 06:00:29

IE缓存所有非POST类型的ajax调用。我发现最好将所有Ajax调用都设为POST,以避免IE这样做,即使您发布的是空数据。

或者你可以按照@redsqaure下面的建议这样做:

缓存({$.ajaxSetup:false})

票数 13
EN

Stack Overflow用户

发布于 2012-10-05 00:25:23

如果你不需要你的数据类型是HTML,你可以试试这个。

代码语言:javascript
复制
$.ajax({        
  url: 'Enter URL'
  dataType: 'jsonp',
  type: 'get',
  success: function (data) { }
});
票数 4
EN

Stack Overflow用户

发布于 2009-11-29 05:56:45

IE缓存ajax调用。确保在调用中包含随机数或随机字符串,例如&rand=[some randomly generated something],然后重试。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1813848

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档