bootstrapValidator.min.js表单验证插件

yizhihongxing

下面是关于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日

相关文章

  • JavaScript实现二级菜单的制作

    下面是详细的JavaScript实现二级菜单的制作攻略: 1. 准备工作 在制作二级菜单之前,需要先准备好以下内容: 一个 HTML 文件 一个 CSS 文件 一个 JavaScript 文件 其中,HTML 文件是页面的基础结构,CSS 文件是用来美化页面的样式,JavaScript 文件则是用来实现菜单的交互效果的。 在 HTML 文件中,需要创建一个菜…

    JavaScript 2023年6月11日
    00
  • JavaScript数据类型相关知识详解

    JavaScript数据类型相关知识详解 在JavaScript中,数据类型可以分为基本数据类型和复杂数据类型。本篇攻略将详细讲解每种数据类型和其相关知识点。 基本数据类型 Number JavaScript中的Number类型可以表示整数和浮点数。在JavaScript中,Number类型可以进行四则运算和比较运算。 整数 JavaScript中的整数范围…

    JavaScript 2023年5月18日
    00
  • 常用正则表达式语法例句

    针对“常用正则表达式语法例句”这个话题,我会根据常见的正则表达式语法分类进行详细的讲解,包含语法的含义、例子实现等。 常用正则表达式语法 字符匹配语法 字符匹配语法主要用于匹配某个特定字符或者一组特定字符,以下是常见的字符匹配语法: .:匹配任意一个字符,比如a.b可以匹配a+b、a.b等 []:用于匹配指定的字符集合,比如[a-z]表示匹配任意一个小写字母…

    JavaScript 2023年5月19日
    00
  • JavaScript高级 ES7-ES13 新特性详解

    JavaScript 高级 ES7-ES13 新特性详解 在这里,我们将介绍 JavaScript ES7 到 ES13 所引入的一些新特性。 1. ES7 新特性 1.1 includes 方法 includes() 方法可用于判断一个数组是否包含一个特定的值,并返回 true 或 false。这个方法在 ES7 中被正式引入,可以通过以下的方式来调用: …

    JavaScript 2023年6月10日
    00
  • JavaScript接口的实现三种方式(推荐)

    下面是关于“JavaScript接口的实现三种方式(推荐)”的详细攻略: 什么是JavaScript接口? JavaScript接口是指一种约定,它定义了一个或多个方法或属性,用于描述某个对象或类应该具备的行为和特征。JavaScript接口常用于实现对象的多态性和抽象性,从而增强代码的可扩展性和可维护性。 JavaScript接口的实现方式 下面介绍三种常…

    JavaScript 2023年5月27日
    00
  • JSON 对象未定义错误的解决方法

    JSON 对象未定义错误指的是在 JavaScript 中使用 JSON.parse() 方法解析字符串时出现的错误,该错误通常是由于字符串格式不正确或 JSON 对象中缺少属性导致的。以下是解决该错误的攻略: 1. 检查字符串格式 首先,我们需要检查使用 JSON.parse() 方法时传入的字符串格式是否正确。JSON 格式要求属性名必须加双引号,属性值…

    JavaScript 2023年5月27日
    00
  • PHP实现的用户注册表单验证功能简单示例

    下面是PHP实现的用户注册表单验证功能简单示例攻略: 一、准备工作 1. 创建注册页面 首先,我们需要创建一个用于用户注册的页面。在该页面中,应该包含有输入用户信息的表单,例如用户名、密码、邮箱等,同时需要添加一个用于提交表单数据的按钮。对于表单输入项,我们需要给它们添加相应的name属性,以方便后续的PHP代码对其进行操作。 2. 编写PHP代码 在用户提…

    JavaScript 2023年6月10日
    00
  • Js判断H5上下滑动方向及滑动到顶部和底部判断的示例代码

    下面是关于Js判断H5上下滑动方向及滑动到顶部和底部判断的完整攻略: 一、背景 在H5页面中,经常需要判断用户向上滑动或向下滑动,并且需要知道用户是否已经滑动到了页面的顶部或底部。为了实现这个功能,需要借助Js的一些特性和事件,下面将会详细介绍。 二、滑动事件 当页面出现滚动条时,可以侦测滚动条的滑动事件,常用的有scroll、touchmove等事件。其中…

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