繁体   English   中英

ie9中的方法$ .ajax成功未接收到数据

[英]The data is not received by method $.ajax success in ie9

在ie9中,成功方法仅通过两个参数接收:textStatus和XMLHttpRequest。 数据始终是未定义的。 在其他所有其他浏览器中,代码都可以正常运行,并且所有3个参数都发送给成功方法。 结果,完成后,我无法处理任何ajax请求。 可能是什么原因呢?

这是方法代码的一部分:

SendAjax = function(async, type, act, t, datas)
{
    var datatype = 'html';
    if (type=='reload_weather' || type=='popup' || act == 'set_location')
        datatype = 'json';

    var result = 0;

    $.ajax({
        url: '_ajax/',
        data: {act:act, type:type, datas:datas},
        type: "POST",
        dataType: datatype,
        cache: false,
        async: async,
        success: function(data, textStatus, XMLHttpRequest)
        {
            printArray(arguments);
            /*
             {
                 "1": "success",
                 "2": {
                 "readyState": 4,
                 "status": 200,
                 "statusText": "OK"
                 }
             }
             */

            printArray(data);
            /*
                undefined
             */
        }
    }
}

通过将以下行添加到接收请求的php-file中,可以解决此问题:

header('Content-type: text/html; charset=utf-8');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM