douduanque5850 2015-02-11 12:06
浏览 70
已采纳

Ajax与php,获得状态200但readyState 0

Script:

function ajaxHandler() {
    var xmlhttp;
    try {  // Opera 8.0+, Firefox, Safari
       xmlhttp = new XMLHttpRequest();

    } catch (e) {   // Internet Explorer Browsers
   try {
        alert("paososdao");
      xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
   } catch (e) {
      try{ 
         xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (e) {   // Something went wrong
         alert("Your browser broke!");
         return false;
      }
   }
 }
    xmlhttp.onreadystatechange = useHttpResponse();
    xmlhttp.open("GET","prova.php",true); 
    xmlhttp.send(null);

    function useHttpResponse(){ 
        if (xmlhttp.readyState < 4)                         // while waiting response from server
            document.getElementById('test').innerHTML = "Loading...";
        else if (xmlhttp.readyState === 4) {             
            if (xmlhttp.status == 200 && xmlhttp.status < 300)
                document.getElementById('test').innerHTML = xmlhttp.responseText;

       }
    }
}

I'm testing it using xampp and I always get readyState = 0 and no response from prova.php, but if I open the developer console on Chrome I can see that the GET request status is 200. What's the problem.

  • 写回答

1条回答 默认 最新

  • doulang9521 2015-02-11 13:01
    关注

    Try that:

     xmlhttp.onreadystatechange = useHttpResponse;
    

    You're calling the useHttpResponse before you need it.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化
  • ¥15 Mirare PLUS 进行密钥认证?(详解)
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
  • ¥20 想用ollama做一个自己的AI数据库
  • ¥15 关于qualoth编辑及缝合服装领子的问题解决方案探寻
  • ¥15 请问怎么才能复现这样的图呀