在看着一个页面A,是一个弹出框,用的jquery中的ajax,然后弹出的内容是另一个Div的。而所出现的问题,是在浏览器中都有弹出框,但是只有谷歌和火狐中的弹出框中内容。

    当时,我所想到的是另一个问题引起的,就是ajax不兼容IE,所以方向完全错了。

   

   jQuery.ajax({
           type:"get",
          // contentType: "application/json", 
           url:"awardlist.do?timeStamp="+new Date().getTime(),
           cache:false,  
           data:jQuery.param(obj,true),
           dataType: \'String\',
               success:function(ret,txt){
                 $("<div class=\'loadmask\'></div>").appendTo(\'body\');
                 $("#award_div_box").removeClass(\'none\').html(ret); 
               }, 
           error: function(xhr, textStatus, errorThrown) {
        alert("错误开始");
               alert(xhr);
               alert(textStatus);
               alert(errorThrown);
           }

})

后来经过调试当中,我用ajax的contentType: “application/json”和 dataType: \’json\’。
然后就会事件就进入error,然后接下来就是弹出parseerror,相信大家都明白为什么,也一并将json数据弹出了,这样也就说明不是ajax的兼容性。

一步一步,就到success:function中,我使用 alert(txt);alert(ret);证明也进来了,txt和ret的数据也有,那就是最后一句代码有问题,

 

$("#award_div_box").removeClass(\'none\').html(ret); 

 

问题出现了、就是因为jquery中的html()不兼容IE.

因而,采用原生的js代替它。

 

document.getElementById("award_div_box").className = "award_box";
document.getElementById("award_div_box").innerHTML = ret;

 

 

 

版权声明:本文为wanliyuan原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/wanliyuan/p/3545463.html