因为在你alert的时候 请求还木有发送 所以他的readyState是1
你这样试下就明白了function getxml()
{
var url="getxml.php?id="+Math.random();
var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.open("GET",url,true);
xmlhttp.onreadystatechange = function() {
alert(xmlhttp.readyState);
}
xmlhttp.send(null);
}
你这样试下就明白了function getxml()
{
var url="getxml.php?id="+Math.random();
var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.open("GET",url,true);
xmlhttp.onreadystatechange = function() {
alert(xmlhttp.readyState);
}
xmlhttp.send(null);
}
这时就能成功的取的state了.
(xmlhttprequest是需要时间的)
//alert(xmlhttp.readyState);
xmlhttp.send(null); 请求都没发呢 肯定不行 你把他写到别的地方
req.onreadystatechange = callback;
例如这样调用一个函数,再调用的函数里面显示xmlhttp.readystated的状态就可以看见他状态的变化了