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 相关文章推荐
javascript removeChild 使用注意事项
Apr 11 Javascript
Node.js抓取中文网页乱码问题和解决方法
Feb 10 Javascript
JavaScript实现同一页面内两个表单互相传值的方法
Aug 12 Javascript
JavaScript基本语法学习教程
Jan 14 Javascript
Bootstrap Modal对话框如何在关闭时触发事件
Dec 02 Javascript
DWR3 访问WEB元素的两种方法实例详解
Jan 03 Javascript
vue.js实例todoList项目
Jul 07 Javascript
angular4中关于表单的校验示例
Oct 16 Javascript
vue仿淘宝订单状态的tab切换效果
Jun 23 Javascript
JavaScript实现左侧菜单效果
Dec 14 Javascript
js提取中文拼音首字母的封装工具类
Mar 12 Javascript
微信小程序的部署方法步骤
Sep 04 Javascript
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
phpMyAdmin 安装教程全攻略
2007/03/19 PHP
控制PHP的输出:缓存并压缩动态页面
2013/06/11 PHP
PHP中echo和print的区别
2014/08/28 PHP
JavaScript instanceof 的使用方法示例介绍
2013/10/23 Javascript
jquery中load方法的用法及注意事项说明
2014/02/22 Javascript
JS动态修改iframe高度和宽度的方法
2015/04/01 Javascript
jQuery实现在下拉列表选择时获取json数据的方法
2015/04/16 Javascript
JQuery+Ajax实现数据查询、排序和分页功能
2015/09/27 Javascript
JavaScript实现打开链接页面的方式汇总
2016/06/02 Javascript
JQuery DIV 动态隐藏和显示的方法
2016/06/23 Javascript
利用Angularjs实现幻灯片效果
2016/09/07 Javascript
任意Json转成无序列表的方法示例
2016/12/09 Javascript
令按钮悬浮在(手机)页面底部的实现方法
2017/05/02 Javascript
jfinal与bootstrap的登出实战详解
2017/11/27 Javascript
使用selenium抓取淘宝的商品信息实例
2018/02/06 Javascript
vue props传值失败 输出undefined的解决方法
2018/09/11 Javascript
vue多级复杂列表展开/折叠及全选/分组全选实现
2018/11/05 Javascript
JavaScript函数式编程(Functional Programming)箭头函数(Arrow functions)用法分析
2019/05/22 Javascript
js获取对象,数组所有属性键值(key)和对应值(value)的方法示例
2019/06/19 Javascript
django中使用vue.js的要点总结
2019/07/07 Javascript
js与jquery获取input输入框中的值实例讲解
2020/02/27 jQuery
[46:02]DOTA2上海特级锦标赛D组资格赛#2 Liquid VS VP第二局
2016/02/28 DOTA
详解Django框架中的视图级缓存
2015/07/23 Python
Python爬虫抓取代理IP并检验可用性的实例
2018/05/07 Python
使用python画个小猪佩奇的示例代码
2018/06/06 Python
Python通过VGG16模型实现图像风格转换操作详解
2020/01/16 Python
numpy中生成随机数的几种常用函数(小结)
2020/08/18 Python
Python爬虫实战案例之爬取喜马拉雅音频数据详解
2020/12/07 Python
房地产销售经理岗位职责
2014/01/01 职场文书
打造高效课堂实施方案
2014/03/22 职场文书
小学教师师德师风个人整改措施
2014/09/18 职场文书
离婚协议书怎么写2014
2014/09/30 职场文书
建党伟业电影观后感
2015/06/01 职场文书
关于MybatisPlus配置双数据库驱动连接数据库问题
2022/01/22 Java/Android
Django + Taro 前后端分离项目实现企业微信登录功能
2022/04/07 Python