日期:2014-05-16  浏览次数:20671 次

Firefox onreadystatechange 不工作 - Web 开发 / Ajax
请问大家 firefox7.0 下,以下代码不运行,但是IE8.0+运行没有问题。 看了一下网上说是Firefox的问题,请问大家代码应该如何修改。谢谢。
我知道Jquery可以,但是不能用Jquery,有谁知道Juqery是如何实现的吗?

  function load() {
  xmlhttp.onreadystatechange = readyDo;
  xmlhttp.open("POST", "http://localhost:28732/default.aspx", true);
  xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
  xmlhttp.send("a=aa&b=123");
  }

  function readyDo() {
  if (xmlhttp.readyState == 4) {
  if (xmlhttp.status == 200) {
  alert(xmlhttp.responseText);
  displayDiv.innerHTML = xmlhttp.responseText;
  }
  }
  else {
  displayDiv.innerHTML = "正在加载..";
  }
  }

------解决方案--------------------
[code=Jscript]
function load() {

var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}

xmlhttp.onreadystatechange = readyDo;
xmlhttp.open("POST", "http://localhost:28732/default.aspx", true);
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
xmlhttp.send("a=aa&b=123");
}

function readyDo() {
if (xmlhttp.readyState == 4) {
if (xmlhttp.status == 200) {
alert(xmlhttp.responseText);
displayDiv.innerHTML = xmlhttp.responseText;
}
}
else {
displayDiv.innerHTML = "正在加载..";
}
}
[/code]

这样试试