JQUERY IE AJAX成功回调无法正常工作

时间:2010-09-15 08:43:56

标签: jquery ajax internet-explorer

目前正在使用jq 1.4.2

我已经通过这个论坛和其他论坛进行了简单的修复...因为很多人都有这个问题..但我没有找到任何似乎有用的东西因此我发布了这个问题

        $(".editvolunteer").fancybox({
            'width'                : 970,
            'height'            : 460,
            'autoScale'            : false,
            'transitionIn'        : 'none',
            'transitionOut'        : 'none',
            'type'                : 'iframe',
            onClosed : function() {
              $.ajax({
            type: "GET",
            dataType: 'html',
             cache: false, 
               url: "ajaxrosterupdate.php",
            data: "x=60",
              async: false,

        success: function(data) {        

              $("#updateroster").html(data);      <---- this work in FF            

        }
        success: function(resp, txtS, xhr) {
                           if (xhr.status==200) {      

                              alert(xhr.status);    <-- this alert box shows up in ie and FF

                                 } else {

                             //    alert(xhr.status);

                           }
        }

      }).responseText;



    }
       });

我不知道我做错了什么我使用了debugbar而且我可以看到回来的html内容我使用了fiddler并且我看到了回来的html内容.... xhr stat = 200所以每件事很好..它不会取代内容$(“#updateroster”)。html(数据)。

过去48小时我一直在敲打我的脑袋,我需要帮助。

1 个答案:

答案 0 :(得分:1)

.html()最终在这里使用.innerHTML似乎之类的是你的标记返回无效导致一些问题。

如果标记出现问题并且您没有看到错误但是结果为空,那么一个浏览器可能会容忍无效的HTML,尽可能地显示它,而另一个浏览器可能会完全丢弃它...似乎是IE正在为你做的事情。