Jquery AJAX无法在IE9中运行

Kev*_*vin 11 ajax jquery

我正在编写一个ajax Web应用程序,但出于任何原因,当我对Internet Explorer 9(IE9)中的内部数据服务执行GET时,它不起作用.同样的调用在Chrome,Firefox和Safari中完美运行.我正在使用localhost Web服务器(wamp)进行开发,并在与我尝试访问的数据服务相同的网络上进行开发.我正在使用Jquery 1.8.1(我已经回过头几个版本,但仍然看到了问题).我的代码看起来像这样:

$(document).ready(function() {

                    var loginUrl = "http://omittedurl.com";
                    console.log(loginUrl);
                    $.ajax({
                        type : "GET",
                        url : loginUrl,
                        dataType : "json",
                        success : function(response) {
                            console.log("RESPONSE: " + response);

                        }
                    });
            });
Run Code Online (Sandbox Code Playgroud)

正如我之前所说,此代码在Chrome和Firefox上运行良好.在IE9中,当我查看Web调试器时,日志中没有错误.就像IE9完全无视.ajax块一样.我尝试过的事情:

  • 关闭Ajax缓存
  • URL编码了我的请求网址
  • 回到三个旧版本的Jquery
  • 从IE9手动ping我的URL(能够得到回复)

有任何想法吗??

Sus*_* -- 26

看起来像是一个问题

的console.log()

当Developer工具未打开时,IE没有控制台对象.尝试通过注释console.log运行代码并再试一次..

$(document).ready(function () {

    var loginUrl = "http://omittedurl.com";
    //console.log(loginUrl);
    $.ajax({
        type: "GET",
        url: loginUrl,
        dataType: "json",
        success: function (response) {
           // console.log("RESPONSE: " + response);
           alert("RESPONSE: " + response)
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

如果你想使用控制台,你需要先定义,如果开发人员工具没有打开..

if (typeof console === "undefined" || typeof console.log === "undefined") {
     console = {};
Run Code Online (Sandbox Code Playgroud)

  • @Gromer看看:http://paulirish.com/2009/log-a-lightweight-wrapper-for-consolelog/ (2认同)
  • 在ajax调用之前我有一个console.log('msg'),我花了将近8小时,认为这是我的ajax代码的问题.在IE上使用在线虚拟机进行了大量调试.终于找到了这个答案!谢谢!! (2认同)