bootstrapValidator.min.js表单验证插件

下面是关于bootstrapValidator表单验证插件的完整攻略。

Bootstrap Validator 概述

Bootstrap Validator 是一个用来为表单组件添加验证的 jQuery 插件。它使用了 Twitter Bootstrap 的样式,并集成了 jQuery 的特性,可以非常方便地为表单添加验证规则。

安装步骤

首先需要下载 Bootstrap Validator 插件,官网下载地址为:https://gitee.com/styczynski/bootstrap-validator。

  1. 引入必要的库文件

在 head 头部引入需要的库文件:

<link rel="stylesheet" href="//cdn.bootcss.com/bootstrap/3.3.5/css/bootstrap.css">
<script src="//cdn.bootcss.com/jquery/3.3.1/jquery.js"></script>
<script src="//cdn.bootcss.com/bootstrap/3.3.5/js/bootstrap.js"></script>
<script src="dist/js/bootstrapValidator.min.js"></script>

其中,bootstrapValidator.min.js 就是 Bootstrap Validator 插件的核心文件,还需引入 Bootstrap 和 jQuery 的库文件。

  1. 设置验证规则

定义表单元素,然后使用 data-* 标签来定义验证规则:

<form id="form" method="post" class="form-horizontal">
    <div class="form-group">
        <label class="col-xs-3 control-label">用户名:</label>
        <div class="col-xs-6">
            <input type="text" class="form-control" name="username" data-bv-notempty="true"
                   data-bv-stringlength="true" data-bv-stringlength-min="6" data-bv-stringlength-max="30">
        </div>
    </div>
    <div class="form-group">
        <label class="col-xs-3 control-label">密码:</label>
        <div class="col-xs-6">
            <input type="password" class="form-control" name="password" data-bv-notempty="true"
                   data-bv-stringlength="true" data-bv-stringlength-min="6" data-bv-stringlength-max="30">
        </div>
    </div>
    <div class="form-group">
        <div class="col-xs-9 col-xs-offset-3">
            <button type="submit" class="btn btn-primary">提交</button>
        </div>
    </div>
</form>

上述示例中定义了两个 input 输入框用于用户输入用户名和密码,同时使用了多个 data-* 标签来声明验证规则:

  • data-bv-notempty="true":输入框不能为空。
  • data-bv-stringlength="true":输入框的字符长度需要在一定范围内,上述定义的规则是6到30个字符。

  • 初始化 Bootstrap Validator

上述代码的下方,使用以下代码初始化 Bootstarp Validator:

$(document).ready(function () {
    $('#form').bootstrapValidator();
});

这里的 #form 是指表单的 id,bootstrapValidator() 是 Bootstrap Validator 的初始化函数。

至此,在表单中就已经成功集成了 Bootstrap Validator 的表单验证插件。

  1. 表单验证的一些高级用法

上述代码中只是一个简单的验证规则示例,还可以做更多的定制化操作,以下是一些高级用法:

  • 远程验证
<input type="text" class="form-control" name="username" data-bv-remote="true"
       data-bv-remote-message="用户名不存在!" data-bv-remote-url="validate.php">
  • 自定义验证函数

在 JavaScript 中增加自定义的验证规则函数:

$.fn.bootstrapValidator.validators.myValidator = {
    validate: function(validator, $field, options) {
        var value = $field.val();
        if (value === 'myValue') {
            return false;
        }
        return true;
    }
};

然后在表单中使用 data-bv-myvalidator="true" 定义该验证规则即可。

示例说明

接下来,通过两个示例来进一步说明 Bootstrap Validator 的用法。

示例 1:远程验证用户名是否存在

<form id="remoteForm" method="post" class="form-horizontal">
    <div class="form-group">
        <label class="col-xs-3 control-label">用户名:</label>
        <div class="col-xs-6">
            <input type="text" class="form-control" name="username" data-bv-remote="true"
                   data-bv-remote-message="用户名不存在!" data-bv-remote-url="validate.php">
        </div>
    </div>
    <div class="form-group">
        <div class="col-xs-9 col-xs-offset-3">
            <button type="submit" class="btn btn-primary">提交</button>
        </div>
    </div>
</form>

以上示例代码定义了一个表单输入框,使用户能够输入用户名,并且通过使用 data-bv-remote="true" 标签使其支持了远程验证,服务端返回响应信息可以配置在 data-bv-remote-message="用户名不存在!" 中。

服务端返回的响应可以是标准的 JSON 格式,例如:

{
    "valid": false
}

返回的 valid 可以为 true 或者 false,如果验证成功,返回 true,如果验证失败,则返回 false

以上示例还需要在 JavaScript 中为 username 标签添加一个成功时和失败时的样式,代码如下:

$('#remoteForm').bootstrapValidator({
    fields: {
        username: {
            validators: {
                notEmpty: {
                    message: '用户名不能为空'
                },
                remote: {
                    message: '该用户名不存在',
                    url: 'validate.php',
                    type: 'POST'
                }
            },
            onSuccess: function(e, data) {
                alert(data.result);
            },
            onError: function(e, data) {
                alert(data.result);
            }
        }
    }
});

通过上述方法精确控制了输入框样式,可以在控制台进行 HTTP 请求的查看。

示例 2:自定义验证函数

<form id="customForm" method="post" class="form-horizontal">
    <div class="form-group">
        <label class="col-xs-3 control-label">邮箱:</label>
        <div class="col-xs-6">
            <input type="text" class="form-control" name="email" id="email" data-bv-emailaddress="true"
                   data-bv-emailaddress-message="该输入框必须是电子邮件地址">
        </div>
    </div>
    <div class="form-group">
        <label class="col-xs-3 control-label">确认邮箱:</label>
        <div class="col-xs-6">
            <input type="text" class="form-control" name="confirmEmail" id="confirmEmail"
                   data-bv-stringlength="true" data-bv-stringlength-min="5" data-bv-stringlength-max="50"
                   data-bv-stringlength-message="输入长度应该在5和50之间" data-bv-identical="true"
                   data-bv-identical-field="email" data-bv-identical-message="两次输入的电子邮件地址不匹配">
        </div>
    </div>
    <div class="form-group">
        <div class="col-xs-9 col-xs-offset-3">
            <button type="submit" class="btn btn-primary">提交</button>
        </div>
    </div>
</form>

以上示例实现了两个输入框用于输入电子邮件,验证过程为:第二个输入框中输入的内容必须和第一个输入框中的内容完全匹配,否则提示错误信息。

在 JavaScript 中为这两个输入框增加验证规则及提示信息:

$('#customForm').bootstrapValidator({
    fields: {
        email: {
            validators: {
                notEmpty: {
                    message: '电子邮件地址不能为空'
                },
                emailAddress: {
                    message: '电子邮件地址格式不正确'
                }
            }
        },
        confirmEmail: {
            validators: {
                notEmpty: {
                    message: '确认电子邮件地址不能为空'
                },
                stringLength: {
                    min: 5,
                    max: 50,
                    message: '长度应该在5和50之间'
                },
                identical: {
                    field: 'email',
                    message: '两次输入的电子邮件地址不匹配'
                }
            }
        }
    }
});

以上代码中在 email 中指定了是否为空和是否符合电子邮件地址格式这两个验证规则,而在 confirmEmail 中则指定了输入框长度需要在5和50之间,并且指定了在确认邮箱输入框中输入的内容必须与 email 输入框中的内容完全一致。

到此为止,Bootstarp Validator 的一些简单用法和高级用法就介绍完了,希望能够帮助到大家。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:bootstrapValidator.min.js表单验证插件 - Python技术站

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

相关文章

  • JS 显示当前日期与时间的代码

    下面是“JS 显示当前日期与时间的代码”的完整攻略,共分为以下几个步骤: 创建一个 HTML 页面,添加一个显示日期和时间的元素,例如 <div id=”date-time”></div>。 在 JavaScript 中获取当前日期时间的信息。可以使用 Date() 函数,该函数会返回一个表示当前日期时间的对象。 在 JavaScri…

    JavaScript 2023年5月27日
    00
  • AngularJS使用angular-formly进行表单验证

    AngularJS是目前比较流行的前端框架之一,用来构建复杂的单页应用程序。表单验证是前端开发过程中必不可少的环节。在AngularJS中,可以使用angular-formly库简化表单验证的开发过程。下面是使用angular-formly进行表单验证的详细攻略。 什么是angular-formly angular-formly是一个AngularJS表单生…

    JavaScript 2023年6月10日
    00
  • PHP实现把文本中的URL转换为链接的auolink()函数分享

    当我们在编写一些包含URL的文本内容时,我们经常需要把这些URL转换为超链接,以便用户可以直接点击链接访问网页。在PHP中,可以使用autolink()函数来实现这个功能。 以下是实现该功能的步骤: 1. 利用正则表达式匹配URL 我们需要使用一个正则表达式来匹配一个可能包含URL的文本,并将URL提取出来。以下是示例代码: function autolin…

    JavaScript 2023年6月11日
    00
  • 学习JavaScript设计模式之状态模式

    以下是详细的攻略: 学习JavaScript设计模式之状态模式 状态模式是什么? 状态模式是一种行为型设计模式,它允许对象在其内部状态更改时更改其行为。这个模式的主要想法是通过创建有限状态机来满足状态相关行为的需要。 状态模式的优点? 优化大型、复杂代码的结构。 减少了 if 语句的使用,使得代码更加简洁。 更好的可扩展性,可以方便地增加、删除或修改状态,而…

    JavaScript 2023年5月28日
    00
  • 微信小程序按钮点击动画效果的实现

    下面是关于“微信小程序按钮点击动画效果的实现”的完整攻略: 简介 在微信小程序中,用户交互体验至关重要。为了增强用户的交互体验,为小程序中按钮添加点击动画效果是非常必要的。本节将详细讲解如何实现一个简单的点击动画效果。 实现步骤 1.添加点击事件 首先,我们需要为按钮添加一个点击事件,这个很简单,只需要在 WXML 文件中绑定点击事件即可: <view…

    JavaScript 2023年6月11日
    00
  • 基于打包工具Webpack进行项目开发实例

    基于打包工具Webpack进行项目开发的完整攻略可以分为如下几个步骤: 创建项目并安装Webpack 配置基本的Webpack配置文件 配置Loader和Plugins 进行项目开发及打包 下面我将详细讲解每一个步骤的具体细节以及两个示例。 1. 创建项目并安装Webpack 首先,我们需要创建一个新的项目,并将Webpack安装在项目中。创建新项目的方法可…

    JavaScript 2023年6月11日
    00
  • JS正则表达式封装与使用操作示例

    JS正则表达式封装与使用操作示例 什么是正则表达式? 正则表达式是一种可以用来匹配文本中模式的工具。例如,你可以使用它来查找文本中所有符合特定模式的单词或者数字等。 正则表达式语法 正则表达式的语法非常复杂,这里只介绍其中一些常用的语法: | 表示或 [] 表示匹配其中一个字符,例如 [abc] 可以匹配 a、b 或 c [^] 表示匹配不属于其中的字符,例…

    JavaScript 2023年6月10日
    00
  • JS中令人发指的valueOf方法介绍

    下面是详细讲解 “JS中令人发指的valueOf方法介绍”的完整攻略。 什么是valueOf方法? 在Javascript中,每个对象都具有一个valueOf()方法。这个方法返回对象的原始值。当我们需要将对象转换为原始值时,Javascript会自动调用这个方法。 valueOf的使用方法 valueOf方法使用非常简单。我们只需要调用对象上的这个方法就可…

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