• 从现在开始,使用简单优雅的validata.js


      表单验证,是后台开发中万年不变的话题,在经历许多实战之后发现

         使用优雅便捷的validate.js实现验证实在是一件非常愉悦的事情

        <form data-validate>
            Enter:
            <input type="password" data-rule="密码:required;number[请输入一个整数];equals(target)"/>
            <input type="password" id="target"/>
         </form>


      在实例用,form元素中加入了data-validate标记,validate.js会为form标记内的验证控件进行自动验证
      验证控件使用data-rule标记,data-rule的语法格式是:

        提示名称: 规则(规则参数) [自定义提示];

      其中 ‘提示名称’与‘自定义提示’都是可选项,某些规则需要传入一个参数,比如equals规则需要传入比较控件的id

      自定义提示中可以使用{name}与{arg}变量,这在自定义规则中很有用

      validate.js会在验证控件之后加入一个标签<div class="error_msg"></div>该标签的模版在$.validate.errorTemplate中

      添加标签的操作由validateHandler实现,validate.js内置了一个简单的验证后操作处理函数

      用户可以使用window.validateHandler = function(msg, scrollTo)来自己的验证后处理函数(添加提示标签,滚动到错误控件处)

      validate.js内置了一些规则,定义在 $.validate.rules下,其结构如下:

         $.validate.rules = {
               required: { rule: /./, message: '不能为空' },
               equals: {
                    action: function (el, rule, val, target) {
                        return val !== $('#'+target).val();
                    }, message: '两次输入的值不一致'
               }
        }


      用户可以往$.validate.rules添加自定义规则,规则中包含了 rule,action,message
      rule表示为一个正则规则,action表示一个函数验证规则,两者是不能同时拥有
      message可以是一个“string”也可以是一个函数,如果是“string”类型,那么可以使用{name},{arg}来替换成控件名称与参数

      如果是函数,其格式是 message : function (name,arg){ return '' }



      使用js获取控件验证状态:

        $('[data-rule]').isValidate() -> bool


      获取验证消息:

        $('form').validate(justTest,scrollTo) -> 
            param: justTest bool 只是检查,不修改Dom
            param: scrollTo bool 滚动到错误元素
            return { isValidate : bool,
                 messages:[{
                              element:jQueryElement,
                              message:string
                              }]
             }
  • 相关阅读:
    常见的HTTP状态码(HTTP Status Code)说明
    Java基本数据类型和Integer缓存机制
    面向对象的三大基本特征和五大基本原则
    工程变更(ENGINEERING CHANGE)
    反射
    Redis学习手册(开篇)
    MVC,SSM与三层架构的构成及相互关系
    Java框架篇---Mybatis 入门
    java三大框架介绍
    WEB前端JS与UI框架
  • 原文地址:https://www.cnblogs.com/Gool/p/5530706.html
Copyright © 2020-2023  润新知