layui原生表单验证的实例


Posted in Javascript onSeptember 09, 2019

在网上看到很多validform和layer配合的验证方式,但是觉得写的不好,不清不楚的,于是研究了一下layui原生的验证

1. 在需要验证的item上加 lay-verify=“value” ,在提交按钮上加 lay-submit lay-filter=“go” 两个属性

value:

required(必填项)
phone(手机号)
email(邮箱)
url(网址)
number(数字)
date(日期)
identity(身份证)
自定义值(就是自定义验证规则)

PS :layui要使用form 得用use...这样的东西,我就不做说明了

layui.use('form', function(){
  var form = layui.form(); //只有执行了这一步,部分表单元素才会修饰成功

2. 说一下自定义验证

在这里写自定义的验证规则,“username”和“pass”是自定义验证规则的名字,就跟前边的"required","phone"...一样,在这里定义好验证的名字和验证规则,

使用的方法就跟"required","phone"...一样一样的

form.verify({
    username: function(value, item){ //value:表单的值、item:表单的DOM对象
      if(!new RegExp("^[a-zA-Z0-9_\u4e00-\u9fa5\\s·]+$").test(value)){
        return '用户名不能有特殊字符';
      }
      if(/(^\_)|(\__)|(\_+$)/.test(value)){
        return '用户名首尾不能出现下划线\'_\'';
      }
      if(/^\d+\d+\d$/.test(value)){
        return '用户名不能全为数字';
      }
    }

    //我们既支持上述函数式的方式,也支持下述数组的形式
    //数组的两个值分别代表:[正则匹配、匹配不符时的提示文字]
    ,pass: [
      /^[\S]{6,12}$/,'密码必须6到12位,且不能出现空格'
    ]
  });

3. 验证通过了就触发提交

‘submit(go)'这个其实就是绑定“提交按钮”,还记得第一步让你加的两个属性吧 lay-submit lay-filter=“go” ,懂了吧!go是可以随便写的

这里指的一提的是data.field这个东西,它会获得 全部表单字段,名值对形式:{name: value},

这样我们在发送ajax的时候就不必自己去收集表单的字段值了

form.on('submit(go)', function(data){
  //console.log(data.elem);//被执行事件的元素DOM对象,一般为button对象
  //console.log(data.form);//被执行提交的form对象,一般在存在form标签时才会返回
  //console.log(data.field); //当前容器的全部表单字段,名值对形式:{name: value}
  
  //发送ajax

  return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
});
});

以上这篇layui原生表单验证的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery 1.4.2发布!主要是性能与API
Feb 25 Javascript
一段批量给页面上的控件赋值js
Jun 19 Javascript
日历查询的算法 如何计算某一天是星期几
Dec 12 Javascript
jquery 提交值不为空的元素示例代码
May 10 Javascript
AngularJS入门教程之模块化操作用法示例
Nov 02 Javascript
JavaScript函数柯里化原理与用法分析
Mar 31 Javascript
ES6学习笔记之Set和Map数据结构详解
Apr 07 Javascript
浅谈通过JS拦截 pushState和replaceState事件
Jul 21 Javascript
es6中的解构赋值、扩展运算符和rest参数使用详解
Sep 28 Javascript
vscode 插件开发 + vue的操作方法
Jun 05 Javascript
vue用ant design中table表格,点击某行时触发的事件操作
Oct 28 Javascript
详解Vue的异步更新实现原理
Dec 22 Vue.js
layui的表单提交以及验证和修改弹框的实例
Sep 09 #Javascript
layui插件表单验证提交触发提交的例子
Sep 09 #Javascript
Node.js之删除文件夹(含递归删除)代码实例
Sep 09 #Javascript
layer.confirm点击第一个按钮关闭弹出框的方法
Sep 09 #Javascript
微信小程序 wx:for遍历循环使用实例解析
Sep 09 #Javascript
layer关闭当前窗口页面以及确认取消按钮的方法
Sep 09 #Javascript
微信小程序 checkbox使用实例解析
Sep 09 #Javascript
You might like
php curl登陆qq后获取用户信息时证书错误
2015/02/03 PHP
jquery 与NVelocity 产生冲突的解决方法
2011/06/13 Javascript
分享XmlHttpRequest调用Webservice的一点心得
2012/07/20 Javascript
extjs 04_grid 单击事件新发现
2012/11/27 Javascript
JavaScript实现Java中StringBuffer的方法
2015/02/09 Javascript
JavaScript使用简单正则表达式的数据验证功能示例
2017/01/13 Javascript
js 函数式编程学习笔记
2017/03/25 Javascript
jQuery EasyUI 组件加上“清除”功能实例详解
2017/04/11 jQuery
JS表格组件神器bootstrap table使用指南详解
2017/04/12 Javascript
使用jQuery ajaxupload插件实现无刷新上传文件
2017/04/23 jQuery
Angular 2父子组件数据传递之@Input和@Output详解 (上)
2017/07/05 Javascript
jQuery实现的简单拖拽功能示例【测试可用】
2018/08/14 jQuery
ES6知识点整理之函数对象参数默认值及其解构应用示例
2019/04/17 Javascript
JS数组扁平化、去重、排序操作实例详解
2020/02/24 Javascript
详解react组件通讯方式(多种)
2020/05/06 Javascript
vue项目实现多语言切换的思路
2020/09/17 Javascript
[03:08]Ti4观战指南上
2014/07/07 DOTA
python使用turtle绘制分形树
2018/06/22 Python
spark dataframe 将一列展开,把该列所有值都变成新列的方法
2019/01/29 Python
flask框架jinja2模板与模板继承实例分析
2019/08/01 Python
pytorch自定义初始化权重的方法
2019/08/17 Python
如何使用python的ctypes调用医保中心的dll动态库下载医保中心的账单
2020/05/24 Python
python的pip有什么用
2020/06/17 Python
python和php哪个更适合写爬虫
2020/06/22 Python
Python持续监听文件变化代码实例
2020/07/22 Python
HTML5本地存储localStorage、sessionStorage基本用法、遍历操作、异常处理等
2014/05/08 HTML / CSS
家得宝加拿大家装网上商店:The Home Depot加拿大
2016/08/27 全球购物
Java如何读取CLOB字段
2013/10/10 面试题
客服部工作职责范本
2014/02/14 职场文书
2014年医院十一国庆节活动方案
2014/09/15 职场文书
教学改革问题查摆整改措施
2014/09/27 职场文书
党风廉正建设个人工作总结
2015/03/06 职场文书
严以律己专题学习研讨会发言材料
2015/11/09 职场文书
终止合同协议书范本
2016/03/22 职场文书
python实现一个简单的贪吃蛇游戏附代码
2022/06/28 Python
在ubuntu下安装go开发环境的全过程
2022/08/05 Golang