网络编程 
首页 > 网络编程 > 浏览文章

layui 正则表达式验证使用实例详解

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )

前言

layui的正则表达式是在form表单中完成的。所以第一步要在你的html中加上指定的form 。

官方参考文档:https://www.layui.com/doc/element/form.html

要保证引用的layui模块中有form.js存在。

快速步骤引用form.js添加form标签,并设置class属性为layui-form,不可改在要验证的属性上加lay-verify 进行验证声明layui.form 并监听提交的按钮事件 。引用js

<script src="/UploadFiles/2021-04-02/layui.js">

主要是保证lay.modules中有form.js存在。

也可以直接引用form.js

添加form标签

<form class="layui-form" action="">

设置要验证的属性

给lay-verify赋值

<input type="text" class="input01 border" id="IdentifyId" 
name="IdentifyId" lay-verify="required|identity"/>

系统自带的属性如下:

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

如果没有想要的,可以自己写,比如

自定义验证

html标记验证的属性

<input type="text" lay-verify="username" placeholder="请输入用户名">
<input type="password" lay-verify="pass" placeholder="请输入密码">

自定义验证的规则

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位,且不能出现空格'
 ] 
});

layui -form 使用说明

1.必须要先render以后,select 才可以使用。

layui.use('form', function(){
 var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
 
 //……
 
 //但是,如果你的HTML是动态生成的,自动渲染就会失效
 //因此你需要在相应的地方,执行下述方法来进行渲染
 form.render();
});

提交按钮

<button type="button" class="layui-btn layui-btn-norma" 
lay-submit lay-filter="submit_button">确定下单</button>

js自定义验证的js和提交时的操作

layui.use('form', function(){
  var form = layui.form ;
  form.render();
  form.verify({
  payTotalAmount:[
   /(^[1-9]\d*(\.\d{1,2})"submit(submit_button)", function () {
  onclickSearch();
  });
上一篇:专门为初学者编写的正则表达式入门教程
下一篇:linux下关于正则表达式grep的一点总结
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。