$(function(){
    var checkedByVerifyCode = false;
    var checkMobieCode = false;
    var checkedMobile = false;
    var checkedEmail = false;
    var checkedLoginName = false;

window.captcha = function(obj) {
       obj.src = "/captcha/index.do?randdate=" + Math.random();
    }

window.checkcode = function(){
        if($("#login_code").val()==""){
            $('#verify_code_error').html("<div class='member-error-message'>*请输入正确的验证码!</div>");
            $('#verify_code_error').show(400);
        } else {
            $('#verify_code_error').html("");
            $('#verify_code_error').hide(400);
        }
    }

function distoshow(e,ltime){
        e.attr('disabled',true);
        var lefttime = parseInt(ltime);
        var tmpstr = e.attr("value");
        var tmpt = setInterval(function(){
            lefttime--;
            if(lefttime > 0){
                e.attr("value",lefttime + "秒后重新发送");
            }else{
                e.attr('value',tmpstr);
                e.attr('disabled',false);
                clearInterval(tmpt);
                return;
            }
        },1000);
    }

//验证密码
    function checkPass(passWord){
        var memberPass = /^[a-zA-Z0-9_]{6,20}$/;
        //var memberPass = /^(?=.*[0-9].*)(?=.*[a-zA-Z].*).{6,20}$/;
        var numPass = /^[0-9]+$/;
        if(passWord == ''){
            $("#passWord").empty().hide();
            $("#MemberBase_pass_em_").empty().append('*密码不能空!').show();
            return false;
        }
        if(numPass.test(passWord)){
            $("#passWord").empty().hide();
            $("#MemberBase_pass_em_").empty().append('*密码不能为纯数字!').show();
            return false;
        }else{
            $("#MemberBase_pass_em_").empty().hide();
        }
        var pass = memberPass.test(passWord);
        if(!pass){
            $("#passWord").empty().hide();
            $("#MemberBase_pass_em_").empty().append('*密码必须包含字母和数字且必须在6-20个字符以内!').show();
            return false;
        }else{
            $("#MemberBase_pass_em_").empty().hide();
            return true;
        }
    }

//校验密码确认
    function checkPassRepeat(Password,PasswordRepeat){
        if(Password != PasswordRepeat){
            $("#MemberBase_pass_repeat_em_").empty().append('*确认密码输入不一致!').show();
            return false;
        }else{
            $("#MemberBase_pass_repeat_em_").empty().hide();
            return true;
        }
    }

//校验验证码
    function checkVerifyCode(verifyCode,email){
        $.post("/member/checkEmailCode.do",{ verifyCode:verifyCode,email:email},function(json){
            
            if(json.status){
                $("#MemberBase_verifyCode_em_").empty().hide();
                checkedByVerifyCode = true;
                return true;
            }else{
                
                $("#MemberBase_verifyCode_em_").empty().append('*'+json.statusinfo).show();
                checkedByVerifyCode = false;
                return false;
            }
        },'json');
    }
    
    //用户名检验
    $('.login_name').focusout(function(){
        var loginName = $.trim($('.login_name').val());
        if(loginName == ''){
            $("#loginName").empty().hide();
            $('#member_UserName').empty().hide();
            $("#MemberBase_login_name_em_").empty().append('*账户名不能为空').show();
            return false;
        }
        $.post("/member/checkLoginName.do",
            { loginName:loginName  },function(json){
                if(json.status){
                    $("#MemberBase_login_name_em_").empty().hide();
                    checkedLoginName = true;
                    return true;
                }else{
                    $("#loginName").empty().hide();
                    $('#member_UserName').empty().hide();
                    $("#MemberBase_login_name_em_").empty().append('*'+json.statusinfo).show();
                    checkedLoginName = false;
                    return false;
                }
            },'json');
    });

//用户密码校验
    $('.member_pass').focusout(function(){
          var passWord = $.trim($('.member_pass').val());
          checkPass(passWord);
    });

//密码确认校验
    $('.member_pass_repeat').focusout(function(){
        var Password = $.trim($('.member_pass').val());
        var PasswordRepeat = $.trim($('.member_pass_repeat').val());
        $(this).closest('td').find('.message-error').remove();
        checkPassRepeat(Password, PasswordRepeat);
    });

//手机号码校验
    $('.member_mobile').focusout(function(){
        var mobile = $.trim($('.member_mobile').val());
        var phoneReg=/^0?1[3584][0-9][0-9]{8}$/;
        if(!phoneReg.test(mobile)){
            $("#MemberBase_mobile_em_").empty().append('*请确认输入的是手机号').show();
            return false;
        }else{
            $("#MemberBase_mobile_em_").empty().hide();
        }
        $('#getPhoneCode').unbind('click');
        $('#getPhoneCode').click(function(){
            $.post("/member/mobileToken.do",{ mobile: mobile },function(json){
                if(json.status){
                    distoshow($('#getPhoneCode'),60);
                    checkedMobile = true;
                    $('#mobile_token').attr('value',json.mobile_token);
                    $('#check_token').attr('value',json.check_token);
                    $('#registeType').attr('value','mobile');
                }else{
                    $("#MemberBase_mobile_em_").empty().append('*'+json.statusinfo).show();
                    checkedMobile = false;
                    return false;
                }
            },'json');
        });
    });

//手机验证码校验
    $('.mobile_code').focusout(function(){
        var mobileCode = $.trim($('.mobile_code').val());
        var mobile = $.trim($('.member_mobile').val());
        $.post("/member/checkMobileCode.do",{ mobileCode:mobileCode,mobile:mobile},function(json){
            if(json.status){
                $("#MemberBase_mobile_code_em_").empty().hide();
                checkMobieCode = true;
                $('#validateByClient').val('true');
            }else{
                $("#MemberBase_mobile_code_em_").empty().append('*'+json.statusinfo).show();
                checkMobieCode = false;
                return false;
            }
        },'json');
    });

//用户邮箱验证
    $('.member_email').focusout(function(){
        var email = $.trim($('.member_email').val());
        var emailReg=/^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;
        if(!emailReg.test(email)){
            $("#MemberBase_email_em_").empty().append('*请确认输入的是邮箱').show();
            return false;
        }else{
            $("#MemberBase_email_em_").empty().hide();
        }
        $.post("/member/checkEmail.do",{email:email},function(json){
            if(json.status){
                $("#MemberBase_email_em_").empty().hide();
                checkedEmail = true;
                return true;
            }else{
                $("#MemberBase_email_em_").empty().append('*'+json.statusinfo).show();
                checkedEmail = false;
                return false;
            }
        },'json');
    });

//校验码验证
    $('.register_box .verifyCode').change(function(){
        var verifyCode = $.trim($(this).val());
        var email = $.trim($('.member_email').val());
        $.post("/member/checkEmailCode.do",{verifyCode:verifyCode,email:email},function(json){
            if(json.status){
                $("#MemberBase_verifyCode_em_").empty().hide();
                checkedByVerifyCode = true;
                $('#validateByClient').val(true);
                return true;
            }else{
                $("#MemberBase_verifyCode_em_").empty().append('*'+json.statusinfo).show();
                checkedByVerifyCode = false;
                return false;
            }
        },'json');
    });

//校验协议
    $('#MemberBase_rules').click(function(){
     if(!$("#MemberBase_rules").attr("checked")){
        $("#MemberBase_rules_em_").empty().append('*您必须同意该协议').show();
     }else{
        $("#MemberBase_rules_em_").empty().hide();
     }
    });

//校验协议
    function checkRules(){
        if(!$("#MemberBase_rules").attr("checked")){
            $("#MemberBase_rules_em_").empty().append('*您必须同意该协议').show();
            return false;
        }else{
            $("#MemberBase_rules_em_").empty().hide();
            return true;
        }
    }

//表单提交验证
    $('form').submit(function(){
        var loginName = $.trim($('.login_name').val());
        var passWord = $.trim($('.member_pass').val());
        var Password = $.trim($('.member_pass').val());
        var PasswordRepeat = $.trim($('.member_pass_repeat').val());
        var mobile = $.trim($('.member_mobile').val());
        var mobileCode = $.trim($('.mobile_code').val());
        var verifyCode = $.trim($('.register_box .verifyCode').val());
        var email = $.trim($('.member_email').val());
        var index = $.trim($('#index').val());

if(loginName == '' || !checkedLoginName){
            $("#MemberBase_login_name_em_").empty().append('*账户名错误').show();
            $("#loginName").empty();
            $('#member_UserName').empty().hide();
            return false;
        }else{
            $("#MemberBase_login_name_em_").empty().hide();
        }
        if(!checkPass(passWord)){
            return false;
        }
        if(!checkPassRepeat(Password, PasswordRepeat)){
            return false;
        }
        if(index == 1){
            if(mobileCode == '' || !checkMobieCode){
                $("#MemberBase_mobile_code_em_").empty().append('*验证码错误').show();
                return false;
            }else{
                $("#MemberBase_mobile_code_em_").empty().hide();
            }
        }
        if(index == 2){
            if($('.member_email').val() == '' || !checkedEmail){
                $("#MemberBase_email_em_").empty().append('*请确认输入的是邮箱!').show();
                return false;
            }else{
                $("#MemberBase_email_em_").empty().hide();
            }
            //验证码读取验证码是否为空,如果为空视为不合法
            if($('.register_box .verifyCode').val() == '' || !checkedByVerifyCode){
                $("#MemberBase_verifyCode_em_").empty().append('*验证码错误').show();
                return false;
            }else{
                $("#MemberBase_verifyCode_em_").empty().hide();
            }
        }
        if(!checkRules()){
            return false;
        }
    });
        
    $('.Eminl_button').hide();
    $('.register_left').find('div').click(function(){
        $('.member-error-message').hide();
        var index = $(this).index();
        //phone_title  选中状态    email_title未选中状态
        $(this).addClass('phone_title').removeClass('email_title').siblings().addClass('email_title').removeClass('phone_title');
        if(index == 0 ){
            $('#index').val('1');
            $('.phone-code').show();
            $('.Eminl').hide();
            $('.mobile_button').show();
            $('.Eminl_button').hide();
        }else{
            $('#index').val('2');
            $('.phone-code').hide();
            $('.Eminl').show();
            $('.mobile_button').hide();
            $('.Eminl_button').show();
        }
    });
});

form的验证包括手机号邮箱等等的更多相关文章

  1. js表单简单验证(手机号邮箱)

    1 <%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncod ...

  2. 常用到的JS 验证(包括例子)

    //验证是否为空    function check_blank(obj, obj_name){         if(obj.value != ''){                  retur ...

  3. AngularJS系列:表单全解(表单验证,radio必选,三级联动,check绑定,form提交验证)

    一.查看$scope -->寻找Form控制变量的位置 Form控制变量 格式:form的name属性.input的name属性.$... formName.inputField.$pristi ...

  4. jquery正则表达式验证(手机号、身份证号、中文名称)

    这篇文章主要介绍了jquery正则表达式验证,实现手机号.身份证号.中文名称验证,感兴趣的小伙伴们可以参考一下 本文实例需要验证的内容:中文姓名.手机号.身份证和地址,验证方法分享给大家供大家参考,具 ...

  5. 框架----Django之Form提交验证(二)

    一.Form提交验证之(学生表.老师表.班级表)的添加和编辑实现案例 1. 浏览器访问 http://127.0.0.1:8000/student_list/ http://127.0.0.1:800 ...

  6. Django之Form组件验证

    今天来谈谈Django的Form组件操作 Django中的Form一般有两种功能: ·输入html ·验证用户输入 Form验证流程 ·定义规则(是一个类)    ·前端把数据提交过来 ·匹配规则 · ...

  7. asp.net 身份验证-Form 身份验证

    一. .net身份验证简介 1.身份验证就是检测用户是否登录及所访问的资源是否有权限.当我们在访问一个受保护网络资源时,往往需要输入用户名.密码信息,或通过其他证书.第三方身份验证等方式.验证(Aut ...

  8. 利用strut2标签自动生成form前端验证代码

    利用strut2标签自动生成form前端验证代码,使用到的技术有1.struts2标签,如<s:form> <s:textfieled>2.struts2读取*Validati ...

  9. 框架----Django之Form提交验证(一)

    一.Form提交验证与Ajax提交验证的运用实例 Form表单提交时会刷新页面,输入失败时,输入框内内容也会随之刷新不能保留:而Ajax提交是在后台偷偷提交,不会刷新页面,因此也就可以保留页面输入框内 ...

随机推荐

  1. Android开发环境——模拟器AVD相关内容汇总

     Android开发环境将分为SDK相关内容.Eclipse ADT相关内容.模拟器AVD相关内容.调试器DDMS相关内容.日志LogCat相关内容.连接驱动ADB相关内容.内存泄露检测工具MAT相关 ...

  2. 安装apr报错rm: cannot remove `libtoolT': No such file or directory

    直接打开/usr/local/src/apr-1.4.6/configure  把 $RM“$cfgfile” 那行删除掉 $RM“$cfgfile” 大约在 42302行 然后再重新运行  ./co ...

  3. 使用Anemometer分析MySQL慢查询记录

    数据库管理员一般是用percona的toolkit工具来分析MySQL慢查询记录,但是不够直观. 下面介绍一款比较直观的工具来统计分析MySQL慢查询记录anemometer. 在使用之前需要安装pe ...

  4. [转]nf_conntrack: table full, dropping packet 连接跟踪表已满,开始丢包 的解决办法

      nf_conntrack: table full, dropping packet  连接跟踪表已满,开始丢包 的解决办法 中午业务说机器不能登录,我通过USM管理界面登录单板的时候发现机器没有僵 ...

  5. Xcode 各版本简介

    1.Xcode 验证 在终端输入 spctl 命令,并带上安装的 Xcode 的路径 $ spctl --assess --verbose /Applications/Xcode.app 之后会看到类 ...

  6. 如何快速学会android的四大基础----Service篇

    很多人都以为,只要学过一点java就可以马上写android应用了,这种想法的产生非常自然,因为现在网上有那么多的android开源实例,只要跟着来,也能够自己写一个播放器.但是,只有去写一个真正投入 ...

  7. Python 爬虫 解决escape问题

    爬取某个国外的网址,遇到的编码问题 ,在前段页面 返回的数据是 亞洲私人珍藏賣,令仝好分享他為此 所傾注的心血與熱愛。 爬虫源码是: url = 'http://www.bonhams.com/auc ...

  8. linux 免密码登录

    linux 免密码登录 配置 test 为本地linux 192.168.1.70 为远程linux [root@test:/home/root]$ssh-keygenGenerating publi ...

  9. libsvm_readme[zz from github]

    Libsvm is a simple, easy-to-use, and efficient software for SVM classification and regression. It so ...

  10. 关于Java Webproject中web.xml文件

    提及Java Webproject中web.xml文件无人不知,无人不识,呵呵呵:系统首页.servlet.filter.listener和设置session过期时限.张口就来,但是你见过该文件里的e ...