代码如下,代码调试了没有问题,但是xmlhttp.readyState一直都是1,不知道是问什么。
var xmlhttp = false;try
{
//IE浏览器
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
//老版本IE
try
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(E)
{
xmlhttp = false;
}
}//不是IE
if(!xmlhttp &&typeofXMLHttpRequest!='undefined')
{
xmlhttp = new XMLHttpRequest();
}
/*这个是活的AJAX的对象*/
/***********************************************************************************************************************************************///检测密码账号是否合法
//_username 用户名
//_password 用户密码
function Check(_username, _password)
{
//var url = "login.php?;
var url = "login.php";
var urlValue = "username="+_username+"&password="+_password;
var objText = "xxxx";

xmlhttp.open("POST", url, true);
xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 
xmlhttp.send(urlValue);
xmlhttp.onreadystatechange = function()
{
if(xmlhttp.readyState==4 && xmlhttp.status==200)
{
objText=xmlhttp.responseText;
}
}


alert(xmlhttp.readyState);
//alert(xmlhttp.status);
alert(objText);
}

解决方案 »

  1.   

    哥们真累啊用 Jquery 一句就行了,也不需要考虑兼容性的。
      

  2.   

    可以用 firebug 看看后台返回了什么
      

  3.   

    1. 首先js的问题
    可以考虑有jquery框架,省了很多兼容性问题,确实很方便。代码如下:
    $.post('url', {
      'username': username
    }, function() {
      // 回调函数});
    2. firebug是一个火狐插件,当触发ajax,post网络请求时,会有在firebug中有一条记录,可以看到发送了什么值,反会了什么值。自己装个firebug试试,再不会的话自己百度去吧。