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

下面我将详细讲解如何使用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日

相关文章

  • 如何让你的JavaScript函数更加优雅详解

    如何让你的JavaScript函数更加优雅详解 在编写JavaScript代码时,如何编写更加优雅的函数是一个值得探究的话题。下面,我们来一步步探讨如何让你的JavaScript函数更加优雅。 1.减少函数参数的数量 函数的参数数量应该尽可能的少,通常在3个以内是比较合适的。这样做的好处是可以避免函数的复杂性并提高代码的可读性,同时也可以提高代码的重用性和可…

    JavaScript 2023年5月27日
    00
  • 对vue下点击事件传参和不传参的区别详解

    对Vue下点击事件传参和不传参的区别详解,主要涉及了在Vue模板中绑定事件并传递参数的方法。 不传参的情况 当我们在Vue模板中绑定一个事件时,如果没有传递任何参数,vue会通过默认的方式将事件对象event传递进去。示例如下: <template> <button @click="handleClick">不传参…

    JavaScript 2023年6月11日
    00
  • 详谈js遍历集合(Array,Map,Set)

    我来为你讲解如何用JavaScript遍历集合。 集合的遍历 在遍历集合之前,首先需要了解集合类型的基本特性。 JavaScript中常见的集合类型有Array、Map和Set。其中: Array是一种有序、可重复的数据集合,它可以通过下标或迭代器来访问其中的元素。 Map是一种关联数组,它保存了键值对,并且键可以是任意类型的数据,而值可以是任意类型的数据。…

    JavaScript 2023年5月27日
    00
  • JavaScript中this详解

    JavaScript中this详解 介绍 this是JavaScript语言中的一个关键字,表示函数在调用时所在的对象。this的指向是在函数被调用时确定的,而不是在函数被创建时确定的。由于JavaScript中的函数可以在不同的对象上下文中被调用,因此this的指向具有动态性。 this的四种调用方式 1. 作为函数调用 当函数不作为对象的属性,或使用ca…

    JavaScript 2023年5月18日
    00
  • js中对象与对象创建方法的各种方法

    下面是关于JavaScript中对象以及创建对象的方法的详细攻略。 一、对象的定义 在JavaScript中,对象是一组属性和方法的集合。对象可以像字典一样,用键值对来存储和调用属性和方法。 对象定义的方式有两种: 1. 直接量方式 直接量方式就是在大括号内写对象的属性和方法: let person = { name: ‘张三’, age: 18, sayH…

    JavaScript 2023年5月27日
    00
  • 如何配置jsconfig.json文件解决VSCode中无法识别@别名引用的问题

    在现代web开发中,使用别名来引用模块已经成为了一个非常常见的做法。这样可以使得代码更加易读、易维护。然而,在使用VSCode进行开发时,如果不正确地配置jsconfig.json文件,就会遇到一些问题。 其中一个比较常见的问题是,在使用“@”符号来引用模块时,无法通过Ctrl + 点击来跳转到相应的文件。这是因为默认情况下,VSCode无法识别这个“@”符…

    JavaScript 2023年4月17日
    00
  • JavaScript常用的3种弹出框(提示框 alert/确认框 confirm/输入框 prompt)

    下面是关于 JavaScript 常用的3种弹出框的完整攻略: 弹出框概述 弹出框是我们在使用 JavaScript 时非常常见的交互方式,它所表现的形式有很多,其中最常见的就是提示框、确认框和输入框,分别由函数 alert()、confirm() 和 prompt() 提供支持。在实际开发中,我们可以根据具体需求调用不同的弹出框,来满足我们对用户操作的提示…

    JavaScript 2023年6月11日
    00
  • js鼠标点击事件在各个浏览器中的写法及Event对象属性介绍

    JS鼠标点击事件在各个浏览器中的写法及Event对象属性介绍 鼠标点击事件是Web开发中使用最频繁的交互功能之一,其中又以JavaScript作为事件的绑定和处理工具最为常见。本文将介绍js鼠标点击事件在各个浏览器中的写法以及Event对象属性介绍。 鼠标点击事件写法介绍 基础事件绑定及处理函数 首先,我们需要了解在各个浏览器中的鼠标点击事件绑定函数,其中a…

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