为什么我的AJAX调用在Google Chrome中失败?

时间:2011-09-26 20:24:53

标签: javascript ajax debugging request readystate

我很好奇为什么我的AJAX调用在Google Chrome中失败了,它在Firefox中运行得非常好。在有人要求之前,不,我没有使用JQuery,因为我需要访问jQuery似乎没有的readyState == 3。

我的脚本目前看起来像这样(大量不必要的部分被删除):

function fetch()
{
    main = new XMLHttpRequest();
    main.open("GET", "<?php echo anchor("thescript"); ?>", true);

    var lastResponse = '';
    var statusString = 'Step 1(of 3), please wait... ';

    main.onreadystatechange = function()
    {
        if( main.readyState == 1 ) 
        {
            alert('Fetch!');
            $("#ajax-status").html( statusString );
        }

        // If there's been an update
        if( main.readyState == 3 )
        {
        }
        if( main.readyState == 4 )
        {
        }
    };
    main.send(null);
}

它在Firefox中完美运行但在Chrome中它甚至都没有提醒任何东西,所以它甚至没有进入readyState 1(这是你发送它时) - 这看起来很奇怪..

任何想法??

1 个答案:

答案 0 :(得分:0)

如上所述:

  

在设置.onreadystatechange

后放置.open()会有什么不同吗      

是的Ein~,它实际上有所不同!我认为,现在的状态正在正常运作!我在发送请求时收到警报,我还在readyState == 3中尝试了警报,并且它也发出警报。但是,由于某种原因,响应似乎是空的