Validform+layer实现漂亮的表单验证特效

yizhihongxing

下面我将详细讲解如何使用Validform和layer实现漂亮的表单验证特效。攻略分为以下几个步骤:

步骤一:引入相关JavaScript文件

首先,在HTML页面中引入Validform和layer的相关JavaScript文件。你可以在官网下载这两个文件,也可以使用CDN加速。以下是引入CDN加速文件的示例代码:

<script type="text/javascript" src="https://unpkg.com/validform@5.3.2/js/Validform_v5.3.2_min.js"></script>
<script type="text/javascript" src="https://cdn.bootcdn.net/ajax/libs/layer/3.1.1/layer.js"></script>

步骤二:创建HTML表单并添加验证规则

接下来,我们需要在HTML中创建表单,并为表单元素添加验证规则。Validform的验证规则可以通过data属性来添加。以下是一个示例表单的代码:

<form action="submit.php" method="post" class="layui-form" id="demoform">
  <div class="layui-form-item">
    <label class="layui-form-label">用户名</label>
    <div class="layui-input-block">
      <input type="text" name="username" lay-verify="required" placeholder="请输入用户名" autocomplete="off" class="layui-input">
    </div>
  </div>
  <div class="layui-form-item">
    <label class="layui-form-label">密码</label>
    <div class="layui-input-block">
      <input type="password" name="password" lay-verify="required|pass" placeholder="请输入密码" autocomplete="off" class="layui-input">
    </div>
  </div>
  <div class="layui-form-item">
    <div class="layui-input-block">
      <button class="layui-btn" lay-submit lay-filter="demo">立即提交</button>
      <button type="reset" class="layui-btn layui-btn-primary">重置</button>
    </div>
  </div>
</form>

在上面的代码中,lay-verify属性用于添加验证规则,多个规则可以用|分隔。例如,required表示必填,pass表示必须是密码格式。表单的提交和重置按钮也需要添加相应的属性,lay-submitlay-filter属性。

步骤三:绑定表单验证事件

在表单验证前,我们需要绑定表单验证事件。以下是示例代码:

$(function(){
  //绑定表单提交事件
  $("#demoform").Validform({
    tiptype: function(msg, o, cssctl) {
      if (o.type == 3) {
        layer.msg(msg, {icon: 2});
      }
    }
  });
});

在代码中,我们使用了jQuery的方式绑定表单验证事件,其中Validform用于绑定表单,tipype用于表示错误提示的样式,这里我们使用了layer的msg方法进行提示。如果你不想使用layer,可以使用其他方式来进行提示。

实例一:验证邮箱和手机号格式

以下是一个验证邮箱和手机号格式的示例代码:

<form action="submit.php" method="post" class="layui-form" id="demoform2">
  <div class="layui-form-item">
    <label class="layui-form-label">邮箱</label>
    <div class="layui-input-block">
      <input type="text" name="email" lay-verify="required|email" placeholder="请输入邮箱地址" autocomplete="off" class="layui-input">
    </div>
  </div>
  <div class="layui-form-item">
    <label class="layui-form-label">手机号</label>
    <div class="layui-input-block">
      <input type="text" name="phone" lay-verify="required|phone" placeholder="请输入手机号码" autocomplete="off" class="layui-input">
    </div>
  </div>
  <div class="layui-form-item">
    <div class="layui-input-block">
      <button class="layui-btn" lay-submit lay-filter="demo2">立即提交</button>
      <button type="reset" class="layui-btn layui-btn-primary">重置</button>
    </div>
  </div>
</form>

在上面的代码中,我们添加了emailphone两个验证规则,可以验证邮箱和手机号格式是否正确。

实例二:自定义错误提示信息

以下是一个自定义错误提示信息的示例代码:

<form action="submit.php" method="post" class="layui-form" id="demoform3">
  <div class="layui-form-item">
    <label class="layui-form-label">用户名</label>
    <div class="layui-input-block">
      <input type="text" name="username" lay-verify="required" placeholder="请输入用户名" autocomplete="off" class="layui-input">
    </div>
  </div>
  <div class="layui-form-item">
    <label class="layui-form-label">密码</label>
    <div class="layui-input-block">
      <input type="password" id="password" name="password" lay-verify="required|minlength(6)" placeholder="请输入密码" autocomplete="off" class="layui-input">
    </div>
  </div>
  <div class="layui-form-item">
    <label class="layui-form-label">确认密码</label>
    <div class="layui-input-block">
      <input type="password" name="repassword" lay-verify="required|confirmPwd" placeholder="请再次输入密码" autocomplete="off" class="layui-input">
    </div>
  </div>
  <div class="layui-form-item">
    <div class="layui-input-block">
      <button class="layui-btn" lay-submit lay-filter="demo3">立即提交</button>
      <button type="reset" class="layui-btn layui-btn-primary">重置</button>
    </div>
  </div>
</form>

在上面的代码中,我们添加了自定义规则confirmPwd,用于验证两次密码是否一致。以下是自定义规则的JavaScript代码:

// 自定义验证规则
$.extend($.Datatype,{
  "confirmPwd": function(gets, obj, curform, regxp){
    var password = $('#password').val();
    if(gets != password){
      return false;   
    }        
  }
});

在代码中,我们使用$.extend方法添加自定义规则,其中confirmPwd为规则名称,“gets”表示获取需要验证的值,”obj“表示当前输入框对象,“curform”表示当前表单对象,“regxp”表示当前规则的正则表达式。这里,我们比较了两次密码是否一致,如果不一致,则返回false,即验证失败。

好了,以上就是关于如何使用Validform和layer实现漂亮的表单验证特效的完整攻略,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Validform+layer实现漂亮的表单验证特效 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • js下载文件并修改文件名

    下面是JS下载文件并修改文件名的完整攻略: 1. 使用XMLHttpRequest对象下载文件并修改文件名 XMLHttpRequest对象是一个内置的JavaScript对象,可以用于从服务器获取数据,包括文件。可以利用它来下载文件并修改文件名。 示例一:下载图片并修改文件名 function downloadImage(url, filename) { …

    JavaScript 2023年5月27日
    00
  • JS 面向对象之神奇的prototype

    接下来我会为你详细讲解JS面向对象之神奇的prototype的完整攻略。在这个攻略中我将会先介绍一下Javascript中面向对象编程的基础概念,然后深入讲解prototype到底是什么以及如何使用。最后,我会给出两个例子来说明如何在实际开发中应用prototype。 一、Javascript中面向对象编程的基础概念 在Javascript中,我们可以通过对…

    JavaScript 2023年5月27日
    00
  • js如何判断不同系统的浏览器类型

    要判断不同系统的浏览器类型,可以使用JavaScript中的navigator对象。navigator对象提供了访问浏览器相关信息的接口,可以用来获取浏览器的名称、版本号、运行平台等信息。 下面是判断浏览器类型的基本步骤: 获取浏览器的代理字符串 JavaScript中的navigator对象上有一个userAgent属性,它是一个字符串,保存了浏览器提供的…

    JavaScript 2023年6月11日
    00
  • JavaScript 中使用SpreadJS导入和导出 Excel 文件的方法

    下面是详细的攻略。 JavaScript 中使用 SpreadJS 导入和导出 Excel 文件的方法 SpreadJS 是一款基于 JavaScript 的电子表格组件,支持 Excel 的导入和导出功能。本文将介绍如何使用 SpreadJS 的 API 对 Excel 文件进行导入和导出操作。 导入 Excel 文件 使用 SpreadJS 的 API …

    JavaScript 2023年6月11日
    00
  • JS产生随机数的几个用法详解

    JS 产生随机数的几个用法详解 在前端开发中,生成随机数是常见的需求。在 JavaScript 中,我们有很多不同的方式来生成随机数,接下来将详细介绍常见的几种方式。 1. Math.random()方法 Math.random() 方法是 JavaScript 中生成伪随机数的默认方法。可以使用以下代码来生成 0 至 1 之间的随机小数。 const ra…

    JavaScript 2023年5月28日
    00
  • JavaScript面向对象程序设计三 原型模式(上)

    JavaScript面向对象程序设计三 原型模式(上) 前言 在 JavaScript 面向对象编程中,原型模式是非常重要的一个概念。通过原型模式,可以更加方便地实现对象的创建、继承等功能。下面,我们来详细介绍 JavaScript 原型模式的相关内容。 什么是原型模式? 在 JavaScript 中,每个对象都有一个原型对象。原型对象就是用来实现对象共享的…

    JavaScript 2023年5月27日
    00
  • 网站程序中非SI漏洞的利用

    非SI漏洞指的是与系统集成无关的漏洞,这些漏洞通常存在于特定的网站程序中,可以被攻击者利用来访问受保护的文件、执行命令或者绕过身份验证等。以下是针对网站程序中非SI漏洞的利用的完整攻略。 准备工作 在开始攻击之前,需要进行以下准备工作: 确认目标网站程序的版本信息。 收集目标网站程序的相关信息,包括文件路径、参数名称、请求方式等。 准备必要的工具和软件,如B…

    JavaScript 2023年6月10日
    00
  • JS在Array数组中按指定位置删除或添加元素对象方法示例

    JS在Array数组中按指定位置删除元素对象方法 在JS中,我们可以利用splice()方法来在Array数组中按指定位置删除元素对象。 splice()方法的用法如下: array.splice(start[, deleteCount[, item1[, item2[, …]]]]) 参数说明: start:必须,表示开始删除或添加的位置。 delet…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部