ajax 服务器回送数据失败 onreadystatechange无法触发回调函数
在一个文本标签中输入电子邮件,当onblur时触发验证事件,到数据库检验是否已经存在该用户,其中dispear方法即为onblur事件触发的方法。已经验证服务器已经收到本地发送的数据并且验证成功,但是echo不回去。
js代码如下:
var myxmlhttprequest;
function getxmlhttpobject(){
var xmlhttprequest;
try{
xmlhttprequest=new xmlhttprequest();
}
catch(e){
try{
xmlhttprequest=new activexobject(msxml2.hmlhttp);
}
catch(e){
xmlhttprequest=new activexobject(microsoft.xmlhttp);
}
}
return xmlhttprequest;
}
function isexist(email){
myxmlhttprequest=getxmlhttpobject();
if(myxmlhttprequest){
alert(hello+email);
var url=/renren/register_legal_process.php;
var data=email=+email;
myxmlhttprequest.open(post,url,true);
myxmlhttprequest.setrequestheader(content-type,application/x-www-form-urlencoded);
// 指定回调函数
myxmlhttprequest。onreadystatechange=deal;
myxmlhttprequest.send(data);
//alert(myxmlhttprequest.readystate);
}
}
function deal(){
alert('hello');
if(myxmlhttprequest.readystate==4){
var isexist=myxmlhttprequest.responsetext;
if(isexist==exist){
$(focus1).style.display=none;
$(wrong1).style.display=none;
$(duihao).style.display=none;
$('wrong5').style.display=block;
}else if(isexist==notexist){
$(focus1).style.display=none;
$(wrong1).style.display=none;
$(wrong5).style.display=none;
$(duihao).style.display=block;
}
}
}
function $(id){
return document.getelementbyid(id);
}
function disappear(ref1,ref2,ref3,ref4){
var app=$(ref1);
var tmp1=$(ref2);
var tmp2=$(ref3);
var tmp3=$(ref4);
var str=tmp1.value;
var reg=/^([a-za-z0-9]+[_|\-|\.]?)*[a-za-z0-9]+@([a-za-z0-9]+[_|\-|\.]?)*[a-za-z0-9]+\.[a-za-z]{2,3}$/gi;
if(!reg.test(str))
{
tmp3.style.display=none;
app.style.display=none;
$(wrong5).style.display=none;
tmp2.style.display=;
}
else
{
/*
* tmp2.style.display=none; app.style.display=none;
* tmp3.style.display=;
*/