关于$.ajax回调函数无法返回布尔值解决方法

function tjm1(){
            var tjm = $("#tjzh");
            var tjmid = $("#tjzhId");
            if(tjm.val() != ""){
                $.ajax({
                    type : "get",
                    async : false,
                    url:"${pageContext.request.contextPath}/pcUser/checkUserName",
                    data :
                    {
                        "userName" : tjm.val()
                    },
                    dateType:'html',
                    success : function(data)
                    {
                        if (data == "0")
                        {
                            tjmid.className="error_prompt";
                            tjmid.html("输入错误!此用户不存在。");
                            return false;//无法得到
                        }
                        tjmid.className="ok_prompt";
                        tjmid.html("输入正确!此用户存在。");
                        return true;//无法得到
                    }
                });
            }
        }

 -----------------------------******************正解*******************---------------------------

function tjm2(){
            var tjm = $("#tjzh");
            var tjmid = $("#tjzhId");
            var flag = false;//声明一个变量
            if(tjm.val() != ""){
                $.ajax({
                    type : "get",
                    async : false,
                    url:"${pageContext.request.contextPath}/pcUser/checkUserName",
                    data :
                    {
                        "userName" : tjm.val()
                    },
                    dateType:'html',
                    success : function(data)
                    {
                        if (data == "0")
                        {
                            tjmid.className="error_prompt";
                            tjmid.html("输入错误!此用户不存在。");
                        }
                        tjmid.className="ok_prompt";
                        tjmid.html("输入正确!此用户存在。");
                        flag = true;//可以得到
                    }
                });
            }
            return flag;
        }

    

function checkForm()
        {
            var flagUserName=userNameBlur();
            var flagPwd=pwdBlur();
            var flagRepwd=repwdBlur();
            var flagTel=telBlur();
            var flagEmail=emailBlur();
            var flagVerificationCode=verificationCodeBlur();
            var flagVerificationCheckBox=verificationCheckBox();
            var flagtjm1 = tjm1();//无法的到函数返回的布尔值
            var flagtjm  = tjm2();//可以得到函数返回的布尔值
            if(flagVerificationCheckBox==true){
                if(flagPwd==true &&flagRepwd==true&&flagTel==true
                        &&flagEmail==true &&flagVerificationCode==true&&flagtjm==true)
                {
                    return true;
                }
                else
                {
                    alert("请按提示信息填写!");
                    return false;
                }
            }else{
                alert("请阅读<<注册条款和隐私保护>>,如已经阅读,请打勾!");
                return false;
            }
        }
 
关于$.ajax回调函数无法返回布尔值解决方法
 搜索的总是五花八门的,总是自己实验后就能知道结果了,为什么会这样,我还是不知道,也无法深究。

相关推荐