jQuery Validate格式验证功能实例代码(包括重名验证)

引入jQuery-1.7.1.js和jquery.validate.js两个js文件

jquery.validate.js下载地址:http://xiazai.jb51.net/201703/yuanma/jquery.validate.rar

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title></title>
  <script src="Scripts/jquery-1.7.1.js"></script>
  <script src="Scripts/jquery.validate.js"></script>
  <script>
    $().ready(function () {
      ///自定义ajax验证
      jQuery.validator.addMethod("ExistsCompany", function (value, element) {  //用jquery ajax的方法验证电话是不是已存在
        var flag = 1;
        $.ajax({
          type: "POST",
          url: '/CustomerMonkey/ExistsCompanyAction',
          async: false,
          data: {
            'name': value, "monkeyid": GetQueryString("monkeyid"), "customerid": function () {
              return $("#hidCustomerID").val();
            }
          },
          success: function (data) {
            if (data.result == "TRUE") {
              flag = 0;
            }
            else if (data.result == "NO") {
              compaymsg = "Name does not exist";
            }
          }
        });
        if (flag == 0) {
          return true;
        } else {
          return false;
        }
      }, compaymsg);
      $("#form1").validate({
        rules: {
          txtUserName:
          {
            required: true,
            minlength: 6,
            rangelength: [6, 20],      //长度5-10之间
            remote: {
              url: "/admin/CheckName",  //后台处理程序
              type: "post",        //数据发送方式
              dataType: "json",      //接受数据格式
              data: {           //要传递的数据
                name: function () {
                  return $("#txtUserName").val();
                }
              }
            },
            ExistsCompany: true,
          },
          txtPassword: {
            required: true,
            minlength: 6,
            rangelength: [6, 20],  //长度5-10之间
            password: true,
          },
          txtPwd: {
            required: true,
            equalTo: "#txtPassword",
            minlength: 6,
            rangelength: [5, 20],  //长度5-10之间
            password: true,
          },
          txtDisplayName: {
            required: true,
            minlength: 6,
            rangelength: [6, 20],  //长度5-10之间
          },
          txtAge: {
            required: true,
            digits: true,
            min: 1,
            max: 100
          },
          sex: {
            required: true,
          },
          txtCard: {
            required: true,
            creditcard: true,
          },
          txtidcard: {
            required: true,
            idcard: true,
          },
          txtEmail: {
            required: true,
            email: true,
          },
          txtTel: {
            required: true,
            phone: true,
          },
          txtQQ: {
            required: true,
            qq: true,
          },
          txtUrl: {
            required: true,
            url: true,
          },
          txtZipCode: {
            required: true,
            zipcode: true
          },
          txtDate: {
            required: true,
            date: true,
          },
          txtISO: {
            required: true,
            dateISO: true,
          },
          filFile: {
            required: true,
            filetype: ["mp3", "wma", "wav"]
          }
        },
        messages: {
          txtUserName: {
            required: "请输入登录名",
            minlength: jQuery.format("登录名不能小于{0}个字符"),
            rangelength: "长度必须介于{0} 和 {1} 之间的字符串",
            remote: "登录名已存在",
          },
          txtPassword: {
            required: "请输入密码",
            minlength: jQuery.format("密码不能小于{0}个字符"),
            rangelength: "长度必须介于{0} 和 {1} 之间的字符串",
            password: "密码只能是数字、字母与下划线"
          },
          txtPwd: {
            required: "请输入确认密码",
            minlength: "确认密码不能小于5个字符",
            rangelength: "长度必须介于{0} 和 {1} 之间的字符串",
            equalTo: "两次输入密码不一致不一致",
            password: "密码只能是数字、字母与下划线"
          },
          txtDisplayName: {
            required: "请输入用户名",
            minlength: jQuery.format("密码不能小于{0}个字符"),
            rangelength: "长度必须介于{0} 和 {1} 之间的字符串",
          },
          txtAge: {
            required: "请输入年龄",
            digits: "只能输入数字",
            min: "最小值是1",
            max: "最大值是100"
          },
          sex: {
            required: "请选择性别",
          },
          txtCard: {
            required: "请输入信用卡",
            creditcard: "请输入信用卡",
          },
          txtidcard: {
            required: "请输入身份证号",
            idcard: "身份证号格式不正确",
          },
          txtEmail: {
            required: "请输入邮箱",
            email: "邮箱格式不正确",
          },
          txtTel: {
            required: "请输入手机",
            phone: "手机格式不正确"
          },
          txtQQ: {
            required: "请输入QQ",
            qq: "qq格式不正确",
          },
          txtUrl: {
            required: "请输入网址",
            url: "请输入正确的网址",
          },
          txtZipCode: {
            required: "请输入邮编",
            zipcode: "邮编格式不正确"
          },
          txtDate: {
            required: "请输入时间",
            date: "日期格式不正确",
          },
          txtISO: {
            required: "请输入ISO",
            dateISO: "ISO格式错误"
          },
          filFile: {
            required: "请选择文件",
            filetype: "只能上传MP3,WMA,WAV格式文件",
          }
        },
        submitHandler: function (form) {
          //避免重复提交数据
          $(form).find(":submit").attr("disabled", true);
          form.submit();
        },
        //指定错误信息位置
        errorPlacement: function (error, element) {
          if (element.is(':radio') || element.is(':checkbox')) { //如果是radio或checkbox
            var eid = element.attr('name');           //获取元素的name属性
            error.appendTo(element.parent());          //将错误信息添加当前元素的父结点后面
          } else {
            error.insertAfter(element);
          }
        },
      });
    });
  </script>
</head>
<body>
  <form id="form1" runat="server">
    <div>
      <p>
        <label>登录名:</label>
        <input id="txtUserName" name="txtUserName" class="sf" type="text" value="" />
      </p>
      <p>
        <label>密码:</label>
        <input id="txtPassword" name="txtPassword" class="sf" type="password" value="" />
      </p>
      <p>
        <label>确认密码:</label>
        <input id="txtPwd" name="txtPwd" type="password" value="" class="sf" />
      </p>
      <p>
        <label>用户名:</label>
        <input id="txtDisplayName" name="txtDisplayName" class="mf" type="text" value="" />
      </p>
      <p>
        <label>年龄:</label>
        <input id="txtAge" name="txtAge" class="mf" type="text" value="" />
      </p>
      <p>
        <label>性别:</label>
        <input id="Radio1" type="radio" value="" name="sex" />男<input id="Radio2" type="radio" value="" name="sex" />女
      </p>
      <p>
        <label>信用卡:</label>
        <input id="txtCard" name="txtCard" class="sf" type="text" value="" />
      </p>
      <p>
        <label>身份证:</label>
        <input id="txtidcard" name="txtidcard" class="sf" type="text" value="" />
      </p>
      <p>
        <label>邮箱:</label>
        <input id="txtEmail" name="txtEmail" class="sf" type="text" value="" />
      </p>
      <p>
        <label>手机:</label>
        <input id="txtTel" name="txtTel" class="sf" type="text" value="" />
      </p>
      <p>
        <label>QQ:</label>
        <input id="txtQQ" name="txtQQ" class="sf" type="text" value="" />
      </p>
      <p>
        <label>网址:</label>
        <input id="txtUrl" name="txtUrl" class="sf" type="text" value="" />
      </p>
      <p>
        <label>邮编:</label>
        <input id="txtZipCode" name="txtZipCode" class="sf" type="text" value="" />
      </p>
      <p>
        <label>时间:</label>
        <input id="txtDate" name="txtDate" class="sf" type="text" value="" />
      </p>
      <p>
        <label>ISO:</label>
        <input id="txtISO" name="txtISO" class="sf" type="text" value="" />
      </p>
      <p>
        <label>文件:</label>
        <input id="filFile" name="filFile" type="file" />
      </p>
    </div>
    <input id="Submit1" type="submit" value="submit" />
  </form>
</body>
</html>  

password: function (value, element) {
      return this.optional(element) || /^\w+$/.test(value);
    },
    address: function (value, element) {
      return this.optional(element) || /^[a-zA-Z0-9][a-zA-Z0-9\s]+$/.test(value);
    },
    ///固定电话123-85611111 或 0311-8561111
    phone: function (value, element) {
      return this.optional(element) || /^\d{3}-\d{8}$|\d{4}-\d{7}$/.test(value);
    },
    ///13866666666
    telphone: function (value, element) {
      return this.optional(element) || /^(\+86)|(86)?1[3,5,8]{1}[0-9]{1}[0-9]{8}$/.test(value)
    },
    mobilephone: function (value, element) {
      return this.optional(element) || /^\d{3}-\d{8}$|\d3\d{8}$|\d{4}-\d{7}$|\d4\d{7}$|1[358]\d{9}$/.test(value);
    },
    //身份证号
    idcard: function (value, element) {
      return this.optional(element) || /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(value);
    },
    ///上传文件格式验证
    filetype: function (value, element, param) {
      var fileType = value.substring(value.lastIndexOf(".") + 1).toLowerCase();
      return this.optional(element) || $.inArray(fileType, param) != -1;
    },  

总结

以上所述是小编给大家介绍的jQuery Validate格式验证实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • jQuery Validate让普通按钮触发表单验证的方法

    一般的表单校验都是直接注册在页面上的匿名函数,导致只能通过固定的提交方式触发表单校验,如果想自定义一个按钮触发表单校验如何实现呢? 目前写法: $(function(){ $("#form").validate({ rules : { user_name : { required : true }, -- }, messages : { user_name : { required : '用户名必填', }, -- } }); }); 改写方法: //编写表单验证函数validform

  • jQuery validate 验证radio实例

    具体代码如下所示: <div class="row cl"> <label class="form-label col-xs-4 col-sm-3"><span class="c-red">*</span>优惠券类型:</label> <div class="formControls col-xs-8 col-sm-9 skin-minimal"> <

  • jQuery Validate 数组 全部验证问题

    jquery validate撇开效率不说,功能上比较全,扩展比较简单,比较好用.但是也不能涵盖所有.下面举例说明 html中有多个name[],每个参数都要进行验证是否为空,这个时候直接用required:true话,不能全部验证,只要这个数组中有一个有值就可以通过的. //if ( this.name in rulesCache || !validator.objectLength($(this).rules()) ) { // return false; //} 修改jquery.vali

  • jQuery Validate 相关参数及常用的自定义验证规则

    Jquery Validate 相关参数 //定义中文消息 var cnmsg = { required: "必选字段", remote: "请修正该字段", email: "请输入正确格式的电子邮件", url: "请输入合法的网址", date: "请输入合法的日期", dateISO: "请输入合法的日期 (ISO).", number: "请输入合法的数字",

  • jQuery Validate验证表单时多个name相同的元素只验证第一个的解决方法

    下面搜集了五种方法,主要还是前两个提供了解决方案,第三种需要修改jQuery源码: 修复jquery.validate插件中name属性相同(如name='a[]')时验证的bug 使用jQuery.validate插件http://jqueryvalidation.org/,当节点的name相同时候,脚本特意忽略剩余节点,导致所有相关节点的errMsg都显示在第一个相关节点上.这个bug在动态生成表单时候影响比较大. 通过查询资料,找到一个解决方案: http://stackoverflow.

  • Ajax+Struts2实现验证码验证功能实例代码

    众所周知,验证码在我们的生活中都是非常常见的,很多公司都在各种折腾各种各样的验证码,这里简要的用一个小案例来实现验证码的功能(ps:其实我挺讨厌验证码这个东西的). 今天分享的是通过ajax来动态的验证验证码输入是否正确.我们这里采用的是ajax+struts2来做的这个验证. 我们新建一个web工程.然后需要导入struts的相应包.之后我们需要写一个类来生成验证码. 这里命名为01_image.jsp,这类的主要功能就是生成验证码,里面是各种画线条,随机数字等,我这里设置的是5个数字的验证,

  • jQuery图片轮播功能实例代码

    jquery 轮播图代码如下所示: <html > <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>图片轮播</title> <style> *{margin:0px;padding:0px;} .one{ float:left; position:relative; lef

  • jQuery模拟爆炸倒计时功能实例代码

     HTML部分  <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>炸弹倒计时</title> <style type="text/css"> .content { width: 200px; margin:0 auto; } .content .img1 { /*添加炸弹动

  • PHP ajax+jQuery 实现批量删除功能实例代码小结

    目录结构 piliangshan.php <?php require_once './db_conn.php'; $sql = "select * from user"; $result = mysqli_query($conn, $sql); ?> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <title>全选演示</tit

  • jQuery Validate格式验证功能实例代码(包括重名验证)

    引入jQuery-1.7.1.js和jquery.validate.js两个js文件 jquery.validate.js下载地址:http://xiazai.jb51.net/201703/yuanma/jquery.validate.rar <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Typ

  • jQuery Validate设置onkeyup验证的实例代码

    jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.下面给大家分享一段jquery validate 设置onkeyup验证的代码,具体代码如下所示: 代码如下所示: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鸟教程(runoob.com)</title&

  • jQuery EasyUi 验证功能实例解析

    废话不多说了,下面给大家介绍下jquery easyui 验证功能的实例代码. { field : 'startPort', title : "起始端口", editor: "text", width : 50, editor: { type: 'SuperValidatebox', options: { required: true, validType: ['integer','length[0,5]'] } }, 自从1.3.2版本开始,validatebox

  • jQuery完成表单验证的实例代码(纯代码)

    废话不多说了,直接给大家贴代码了,具体代码如下所示: <!doctype html> <head> <meta charset=utf-8" /> <title>表单验证</title> <link href="css/style1.css" rel="external nofollow" rel="stylesheet" type="text/css"

  • jQuery实现下拉加载功能实例代码

    废话不多说了,直接给大家贴代码了,具体代码如下所示: <script> var str = ''; if(page=="") page=1; var stop=true;//触发开关,防止多次调用事件 $(window).scroll( function(event){ //当内容滚动到底部时加载新的内容 100当距离最底部100个像素时开始加载. if ($(this).scrollTop() + $(window).height() + 10 >= $(docum

  • jQuery中Chosen三级联动功能实例代码

    Chosen 是一个JavaScript插件,它能让丑陋的.很长的select选择框变的更好看.更方便,不仅如此,它更扩大了,增长了主动筛选的功能. 本文介绍Chosen联动,具体代码如下: var addressResolve = function (options) { //检测用户传进来的参数是否合法 if (!isValid(options)) return this; //默认参数 var defaluts = { proId: 'divProv', cityId: 'divCity'

随机推荐