$(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. Linux查看GPU使用情况

    watch -n 10 nvidia-smi 一.watch watch命令用来定时执行某个程序 二.nvidia-smi nvdia-smi是英伟达自带的GPU监控命令.

  2. 我的第一个Raspberry PI装置

    好吧,我先承认是这是从书上学习的第一个示例. 我入手的是Raspberry红版,版本2,看到这么小巧的卡片电脑可以做这么多事情,真是让人惊喜! 安装系统等都很顺利,启动.安装程序.远程桌面.SSH登录 ...

  3. ant执行jar包中的main方法

    <project name= "myproject" basedir= "." default="main">    <p ...

  4. 【HTML】HTML之marquee详解

    该标签不是HTML3.2的一部分,并且只支持MSIE3以后内核,所以如果你使用非IE内核浏览器(如:Netscape)可能无法看到下面一些很有意思的效果该标签是个容器标签语法: <marquee ...

  5. OpenCV 学习笔记 02 使用opencv处理图像

    1 不同色彩空间的转换 opencv 中有数百种关于不同色彩空间的转换方法,但常用的有三种色彩空间:灰度.BRG.HSV(Hue-Saturation-Value) 灰度 - 灰度色彩空间是通过去除彩 ...

  6. Oracle 12C -- clone a remote pdb

    Connect to the remote CDB and prepare the remote PDB for cloning. SQL> select con_id,dbid,name,op ...

  7. [转]Redis几个认识误区

    转自timyang:http://timyang.net/data/redis-misunderstanding/ 前几天微博发生了一起大的系统故障,很多技术的朋友都比较关心,其中的原因不会超出Jam ...

  8. CSS艺术字

    一.使用canvas自己画 1. 脚本部分 <script type="text/javascript"> function drawText() { var canv ...

  9. Mysql命令行改动字段类型

    在做微信公众平台 知识百科(账号:zhishiwiki) 时,由于字段先前设计的不合理.导致内容装不下,因此须要改动其字段类型为 text 这里使用到了 alter 命令 alter table 表名 ...

  10. 【转载】linux 测试机器端口连通性方法

    转载原文:http://blog.csdn.net/z1134145881/article/details/54706711 下面一一介绍: 1 telnet方法 2 wget方法 3 ssh方法 4 ...