// 手机号码验证
jQuery.validator.addMethod("isMobile", function(value, element) {
  var length = value.length;
  var mobile = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/;
  return this.optional(element) || (length == 11 && mobile.test(value));
}, "请输入正确的手机号码");
jQuery.validator.addMethod("isMobile2", function(value, element) {
    status1=checkphone(value);
  return this.optional(element) || status1;
}, "此手机号码已经注册");
jQuery.validator.addMethod("isUsername", function(value, element) {
    status2=checkname(value);
  return this.optional(element) || status2;
}, "此账号已经被注册");
jQuery.validator.addMethod("ischecked", function(value, element) {
    status2=ischecked(value);
  return this.optional(element) || status2;
}, "此账号已经被注册");
//验证输入的验证码是否正确
 jQuery.validator.addMethod("yzcheck",function(value,element){
    status3=checkCode(value);
    return this.optional(element) || status3 ;

},"验证码错误");

$().ready(function() {
        $("#firstform1").validate({  
            debug: true, //调试模式取消submit的默认提交功能   
                //errorClass: "label.error", //默认为错误的样式类为:error   
                focusInvalid: false, //当为false时,验证无效时,没有焦点响应  
                onkeyup: false,   
                submitHandler: function(form){   //表单提交句柄,为一回调函数,带一个参数:form   
                  register_1();  
                  return false;
                    //form.submit();   //提交表单   
                },
            /*errorLabelContainer: "#messageBox",       //显示错误信息的容器ID  
            wrapper: "li",                              //包含每个错误信息的容器*/  
            rules:{  
                Username:{  
                    required: true,  
                    minlength:6,  
                    maxlength:18,
                    isUsername:true
                },
             phone:{
                 required:true,
         isMobile:true ,
                 isMobile2:true
                 },
            agreen:{
            //    ischecked:true,
                required:true
                
                },
            yzmm:{
                required:true,
                yzcheck:true,
                
                },
          password:{
              required:true,
        minlength:6,
        maxlength:18,
              },
        repassword:{
         required:true,
         equalTo:"#password"    
            }
    
            },  
            messages:{  
                Username:{  
                    required: "请填写姓名",  
                    minlength: "字符长度不能小于6个字符",  
                    maxlength: "字符长度不能大于18个字符" ,
                    isUsername:"此账号已经被注册"
                },
            phone:{
                required: "请输入您的联系电话",
                isMobile: "请输入一个有效的联系电话" ,
                isMobile2:"此手机号码已经被注册!"
                },
        agreen:{
             required:"微融服务器协议必须",
            
            
            },
         yzmm:{
             required:"验证码必须",
             yzcheck:"验证码错误",
             },
        password:{
      required:"密码必须",
      minlength:"密码长度至少为6位",
      maxlength:"密码长度不能超过18位"
            
            },
      repassword:{
       required:"确认密码必须",  
       equalTo:"确认密码不正确"
          }
            } ,
    errorPlacement: function(error, element) {
    if ( element.is(":radio") )
        error.appendTo ( element.parent() );
    else if ( element.is(":checkbox") )
        error.appendTo ( element.parent() );
    else if ( element.is("input[name=captcha]") )
        error.appendTo ( element.parent() );
    else
        error.insertAfter(element);
}  
        });  
          
    });  
    function checkphone(objvalue){
         $.ajax({
        url:"action/RegAction.php?action=checkp",
        async:false,//异步请求
        cache:false,//不缓存
        type:"post",
        data:{"phone":objvalue},
        dataType:"json",
        beforeSend:function(){
            //$(".layer").fadeOut(500);
        },
        error:function(){
         alert('网络原因');
        },
        success:function(data){
        
        
      if(data>=1){
          
          result=false;
                  }
         else{
        
            result=true;
             }
        }
    });
    return result;
    }
    //检测用户名是否存在
    function checkname(objvalue){
        $.ajax({
        url:"action/RegAction.php?action=recheck",
        async:false,//异步请求
        cache:false,//不缓存
        type:"post",
        data:{"Username":objvalue},
        dataType:"json",
        beforeSend:function(){
            //$(".layer").fadeOut(500);
        },
        error:function(){
         alert('网络原因');
        },
        success:function(data){
    
      if(data>=1){
          
          result=false;
                  }
         else{
          
            result=true;
             }
        }
    });
    return result;
    }   
    
    //获取短信
    
  function ischecked(obj){
      
      
      }

function sendNote1(){
    if (status1&status2){    
        var phone=escape($("input[name='phone']").val());
                $.ajax({
                    url:"action/RegAction.php?action=getMobileCode",
                    async:true,//设为false会等待ajax执行完毕在执行后面的JS代码
                    type:"post",
                    data:{"phone":phone},
                    dataType:"json",
                    error:function(){
                        alert("网络 Error,请稍后尝试注册");
                    },
                    success:function(data){
                        if(data == 1){
                            seconds=60;
                            showRzz(seconds,speed,phone);
                        //    $("#getSms").html("<font color=red>验证码已发送, 请耐心等待</font>");
                            //$("#zhuceButton").prop('disabled', false);
                            //hideTopError()
                        }else{
             $("#yzmm").removeClass("has-success").addClass("has-error");
           $("input[name='yzmm']").val('');
           $("input[name='yzmm']").attr("placeholder","验证码不正确");
          result=false;
                        }
                    }
                });// end ajax call
        }
     }
var seconds = 30;
var speed = 1000;
function showRzz(seconds,speed,phone){
    var rzz=$("#getSms1");
    var oldText=$("#getSms1").html();
    var txt =  "<a class='center-block' href='javascript:void(0)'>("+seconds +"发送验证码)</a>";
    var timeIdd = setTimeout("showRzz(seconds--,speed)",speed);
      if(seconds == 0){
        txt="<a href=\"#.\" onClick=\"sendNote1()\" class=\"center-block color58\">获取验证码<span class=\"color4045\">60</span></a>";
           clearTimeout(timeIdd);
          // alert(seconds)
    };
    rzz.html(txt);
}

function checkCode(objvalue){
        $.ajax({
        url:"action/RegAction.php?action=reCode",
        async:false,//异步请求
        cache:false,//不缓存
        type:"post",
        data:{"yzmm":objvalue},
        dataType:"json",
        beforeSend:function(){
            //$(".layer").fadeOut(500);
        },
        error:function(){
         alert('网络原因');
        },
        success:function(data){
        
      if(data==1){
            result=true;
                  }
         else{
          result=false;
             }
        }
    });
    return result;
    }
function register_1(){
     var username=$("input[name=Username]").val(); //用户名
   var phone=$("input[name=phone]").val();//手机号码
    
      $.ajax({
        url:"action/ManagerAction.php?action=register_1",
        async:false,//异步请求
        cache:false,//不缓存
        type:"post",
        data:{"phone":phone,"username":username},
        dataType:"json",
        beforeSend:function(){
            //$(".layer").fadeOut(500);
        },
        error:function(){
         alert('网络原因');
        },
        success:function(data){
        
      if(data==1){
        window.location.href="register_s1.php?action=step2";
          //  result=true;
                  }
         else{
          alert("网络原因,注册失败!")
          result=false;
             }
        }
    });
    
    
    }

关于jquery.validate.js的用法的更多相关文章

  1. jquery.validate.js表单验证 jquery.validate.js的用法

    jquery.validate.js这个插件已经用了2年多了,是一个不可多得的表单验证最方便快捷的插件.基于jquery的小插件,基本小白一学就会上手,对于项目表单页面比较多,元素比较多的校验,该插件 ...

  2. jquery.validate.js 表单验证简单用法

    引入jquery.validate.js插件以及Jquery,在最后加上这个插件的方法名来引用.$('form').validate(); <!DOCTYPE html PUBLIC " ...

  3. jquery validate.js表单验证的基本用法入门

    这里转载一篇前辈写的文章,在我自己的理解上修改了一下,仅作记录. 先贴一个国内某大公司的代码: 复制代码 代码如下: <script type="text/javascript&quo ...

  4. jquery.validate.js使用说明——后台添加用户邮箱功能:非空、不能重复、格式正确

    重点内容为:  jQuery验证控件jquery.validate.js使用说明+中文API[http://www.tuicool.com/articles/iABvI3] 简单教程可以参考[jQue ...

  5. 表单提交学习笔记(二)—使用jquery.validate.js进行表单验证

    一.官网下载地址:http://plugins.jquery.com/validate/ 二.用法 1.在页面上进行引用 <script src="~/scripts/jquery-1 ...

  6. 修改 jquery.validate.js 支持非form标签

    尝试使用markdown来写一篇blog,啦啦啦 源代码传送门:github 在特殊情况下我们使用jquery.validate.js对用户输入的内容做验证的时候,表单并不是一定包含在form之中,有 ...

  7. 表单验证插件之jquery.validate.js

    提到表单验证的插件,第一个想到的就是jquery.validate.js,所以小生想在这里稍微详细地说一下这款插件的具体使用方法,便于理解,我直接附上整段demo的代码(没怎么调样式,主要是看js): ...

  8. Jquery客户端校验——jquery.validate.js

    jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆绑了一套有用的验证方法,包括 URL 和电子邮件验证 ...

  9. jQuery验证控件jquery.validate.js使用说明

    官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation jQuery plugin: Validation 使用说明 转载 ...

随机推荐

  1. 一、数据库、SQL简介

    1.数据库简介 1.1数据库:保存有组织的数据的容器(通常是一个文件或一组文件) 数据库软件:称为数据库管理系统(DBMS),数据库是通过DBMS创建和操纵的.通常用户使用DBMS访问数据库. 表:表 ...

  2. JDK8新特性之Optional

    Optional是什么 java.util.Optional Jdk8提供Optional,一个可以包含null值的容器对象,可以用来代替xx != null的判断. Optional常用方法 of ...

  3. java-day18

    函数式接口在java中指:有且仅有一个抽象方法的接口 @FunctionalInterface注解:可以检测接口是否是一个函数式接口 函数式接口的使用:一般可以作为方法的参数和返回值类型 自定义函数式 ...

  4. XVIII Open Cup named after E.V. Pankratiev. GP of SPb

    contest Link A. Base i − 1 Notation solved by sdcgvhgj 238 求出a+b的2进制后从低位到高两位两位地转化为i-1进制 i-1进制的第2k位和第 ...

  5. 从零开始搭建系统1.1——CentOs安装

    本篇主要是记录安装CentOs的过程,为什么会选择CentOs,没有过多的原因,主要是出于CentOs相对来说安装的人比较多, 以后有问题了方便查资料.本次安装是安装在一台笔记本上,WIN7+Cent ...

  6. js求三个数的最大值运算

    js代码: <script> // var num1 = 32, // num2 = 43, // num3 = 98; // if (num1 > num2) { // if (n ...

  7. [转]在WPF中自定义控件 UserControl

    在这里我们将将打造一个UserControl(用户控件)来逐步讲解如何在WPF中自定义控件,并将WPF的一些新特性引入到自定义控件中来.我们制作了一个带语音报时功能的钟表控件, 效果如下: 在VS中右 ...

  8. vue-cli搭建vue开发环境

    前置环境 npm install -g vue-cli vue list 已安装环境后: vue init webpack sell 建立项目名称sell----------------------- ...

  9. thinkphp PATH_INFO支持

    如果发生在本地测试正常,但是一旦部署到服务器环境后会发生只能访问首页的情况,很有可能是你的服务器或者空间不支持PATH_INFO所致. 系统内置提供了对PATH_INFO的兼容判断处理,但是不能确保在 ...

  10. eclipse背景设置什么颜色缓解眼睛疲劳

    eclipse背景设置什么颜色缓解眼睛疲劳 1.打开window->Preference,弹出Preference面板 2.展开General标签,选中Editors选项,展开. 3.选中 Te ...