为什么我的Ajax代码无法在IE8中运行?

时间:2011-07-05 18:08:48

标签: php mysql ajax

我的Ajax代码在IE8中不起作用,但它适用于Firefox。我尝试了几种不同的方式,人们在互联网上发布,但似乎没有一种方法可行。

这是我的代码,但不是在IE8中:

function populatematerial(str)
{
    if (str=="") {
      document.getElementById("txtHint").innerHTML="";
      return;
    }

    var xmlHttp = null;

    if (window.XMLHttpRequest) {
     // IE7+, Firefox, Chrome, Opera, Safari
      xmlhttp=new XMLHttpRequest();
    }

    else{
     // IE6, IE5
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }

    xmlhttp.onreadystatechange=function()
    {
      if (xmlhttp.readyState==4 && xmlhttp.status==200) {
        document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
      }
    }

    xmlhttp.open("GET","GetMySQLData.php?q="+str,true);
    xmlhttp.send();
}

在PHP文件中,它只是从MySQL数据库中获取数据以填充新的select方法。

2 个答案:

答案 0 :(得分:0)

删除if语句的这一部分:&& xmlhttp.status==200你应该很好(这似乎是IE中的一个错误)

答案 1 :(得分:0)

您收到的错误类型..发布错误消息...

还要确保没有从php页面返回的javascript函数。