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 获取IFrame中对象及获取其父窗口中对象示例
Aug 19 Javascript
Js实现网页键盘控制翻页的方法
Oct 30 Javascript
JavaScript笔记之数据属性和存储器属性
Mar 31 Javascript
Document.body.scrollTop的值总为零的快速解决办法
Jun 09 Javascript
老生常谈 关于JavaScript的类的继承
Jun 24 Javascript
微信小程序 progress组件详解及实例代码
Oct 25 Javascript
JS中cookie的使用及缺点讲解
May 13 Javascript
解决JS外部文件中文注释出现乱码问题
Jul 09 Javascript
JavaScript实现音乐自动切换和轮播
Nov 05 Javascript
JS实现倒计时图文效果
Nov 17 Javascript
扫微信小程序码实现网站登陆实现解析
Aug 20 Javascript
Vue生命周期activated之返回上一页不重新请求数据操作
Jul 26 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
CentOS 6.2使用yum安装LAMP以及phpMyadmin详解
2013/06/17 PHP
php和editplus正则表达式去除空白行
2015/04/17 PHP
js身份证验证超强脚本
2008/10/26 Javascript
jquery.cookie() 方法的使用(读取、写入、删除)
2013/12/05 Javascript
jQuery中$.get、$.post、$.getJSON和$.ajax的用法详解
2014/11/19 Javascript
jQuery实现仿腾讯微博滑出效果报告每日天气的方法
2015/05/11 Javascript
老司机带你解读jQuery插件开发流程
2016/05/16 Javascript
javascript 内置对象及常见API详细介绍
2016/11/01 Javascript
NodeJs测试框架Mocha的安装与使用
2017/03/28 NodeJs
基于 Bootstrap Datetimepicker 联动
2017/08/03 Javascript
vue.js使用3DES加密的方法示例
2018/05/18 Javascript
详解如何webpack使用DllPlugin
2018/09/30 Javascript
微信小程序非swiper组件实现的自定义伪3D轮播图效果示例
2018/12/11 Javascript
JavaScript实现省市区三级联动
2020/02/13 Javascript
[01:12:44]VG vs Mineski Supermajor 败者组 BO3 第二场 6.6
2018/06/07 DOTA
探究数组排序提升Python程序的循环的运行效率的原因
2015/04/01 Python
python获取一组数据里最大值max函数用法实例
2015/05/26 Python
Python 模块EasyGui详细介绍
2017/02/19 Python
tornado+celery的简单使用详解
2019/12/21 Python
Django框架静态文件处理、中间件、上传文件操作实例详解
2020/02/29 Python
Python 实现自动登录+点击+滑动验证功能
2020/06/10 Python
Python3爬虫中Selenium的用法详解
2020/07/10 Python
Python 删除List元素的三种方法remove、pop、del
2020/11/16 Python
H5 canvas中width、height和style的宽高区别详解
2018/11/02 HTML / CSS
德国综合购物网站:OTTO
2018/11/13 全球购物
C#面试题问题集
2016/04/02 面试题
医学类导师推荐信范文
2013/11/19 职场文书
优秀员工自荐书
2013/12/19 职场文书
酒店端午节促销方案
2014/02/18 职场文书
母亲节演讲稿
2014/05/27 职场文书
《山中访友》教学反思
2016/02/24 职场文书
实习报告范文之电话客服岗位
2019/07/26 职场文书
用Python简陋模拟n阶魔方
2021/04/17 Python
如何用Laravel包含你自己的帮助函数
2021/05/27 PHP
pandas进行数据输入和输出的方法详解
2022/03/23 Python
Win10本地连接不见了怎么恢复? win10系统电脑本地连接不见了解决方法
2023/01/09 数码科技