读书人

jquery及ajax 都验证通过 为啥这个方

发布时间: 2013-01-22 10:23:54 作者: rapoo

jquery及ajax 都验证通过 为什么这个方法最后返回false,急死了
function checkemail(){
var reg=false;


var email = $('#txtEmail').val();
var tag=/^[A-Za-z0-9\d]+([-_\.\+]*[A-Za-z0-9\d])*@([a-z0-9\d][a-z0-9\d-]{0,61}[a-z0-9\d]\.)+[a-z\d]{2,6}$/;
if(email==null||email.length<=0){
$("#email_error").text("邮箱不能为空");


}else if(!tag.test(email)){
$("#email_error").text("邮箱格式不正确");


}else{

$.ajax({
type:"get",
url:"validateemail?email="+email,
dataType:"json",
success:function(data){
if(data.isEmail=="no"){
$("#email_error").text("邮箱已被占用");


}else{

$("#email_error").text("邮箱可以使用");

reg=true;

}

}

});

}

if(reg == false){
return false;
}else{
return true;

} jquery ajax function
[解决办法]
你的ajax应该是异步的 这时在ajax返回值前程序依然往下运行,所以在ajax将reg赋值为true前方法就将reg为false的值返回了 你让程序延时一秒返回试试 看可以不
[解决办法]
$.ajax({
async:false,
.....

读书人网 >JavaScript

热点推荐