getXMLHTTP statusObject中的文本变量未找到状态=200


getXMLHTTP statusText variable in object not found status !=200

所以我在隔离问题之前发布了这篇文章,并认为我会在隔离问题的情况下发布,这发生在这两个函数之间。当我更新State时,它会调用getCity函数,这似乎很好。呼叫正在进行。

  <script type="text/javascript">
    function getXMLHTTP() {
       var ret = false;
       try {
          x = new XMLHttpRequest();
       }catch(e) {
         try {
            x = new ActiveXObject("Microsoft.XMLHTTP");
         }catch(ex) {
            try {
                req = new ActiveXObject("Msxml2.XMLHTTP");
            }
            catch(e1) {
                x = false;
            }
         }
      }
      return x;
    }
 function getCity(stateId)
 {
  var strURL="findCity.php?state="+stateId;
  var req = getXMLHTTP();
  if (req)
  {
    req.onreadystatechange = function()
     {
       if (req.readyState == 4) // only if "OK"
       {
          if (req.status == 200)
          {
              document.getElementById('citydiv').innerHTML=req.responseText;
          } else {
              alert("There was a problem while using XMLHTTP:'n" + req.statusText);//This Is the statement I am getting
          }
       }
     }
     req.open("GET", strURL, true);
     req.send(null);
  }
}

因此,调用发生在两个函数上,但是getXMLHTTP返回给getCity的对象有一个statusText变量not found。这意味着没有其他条件适用于它

我在这里和其他地方或这个问题上看了很多遍,但都到了死胡同,我甚至看了w3c的对象文档,但至少可以说,它很简短,是什么导致了这个问题。

基于此页面:http://msdn.microsoft.com/en-us/library/windows/desktop/ms759127(v=vs.85).aspx看起来statusText属性直到MSXML3才在MSXML API中实现。由于您调用的是MSXML2 API,我想这就是您的错误的来源。这个问题是否孤立于特定的浏览器或平台?

顺便说一句,dottoro是一个查找此类文档的好网站:http://help.dottoro.com/ljtutikf.php#supByObj