使用BootStrapValidator完成前端输入验证

yizhihongxing

使用 BootStrapValidator 完成前端输入验证的完整攻略如下:

步骤一:引入 BootStrap 和 BootStrapValidator 库

首先,需要引入 BootStrap 和 BootStrapValidator 两个库:

<!-- BootStrap CSS文件 -->
<link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">

<!-- BootStrap JavaScript文件 -->
<script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

<!-- BootStrapValidator CSS文件 -->
<link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap-validator/0.5.3/css/bootstrapValidator.min.css">

<!-- BootStrapValidator JavaScript文件 -->
<script src="https://cdn.bootcss.com/bootstrap-validator/0.5.3/js/bootstrapValidator.min.js"></script>

步骤二:编写HTML代码

在HTML表单中,给需要验证的表单元素添加相关属性:

<form id="form" class="form-horizontal" method="post" action="#">
  <div class="form-group">
    <label class="col-sm-3 control-label">手机号码:</label>
    <div class="col-sm-5">
      <input type="text" class="form-control" name="phone" placeholder="请输入手机号" data-bv-notempty="true"
             data-bv-regexp="true" data-bv-regexp-regexp="^1[3456789]\d{9}$" data-bv-regexp-message="手机号码格式不正确"
             data-bv-message="请输入手机号" autocomplete="off">
    </div>
  </div>
  <div class="form-group">
    <label class="col-sm-3 control-label">邮箱地址:</label>
    <div class="col-sm-5">
      <input type="email" class="form-control" name="email" placeholder="请输入邮箱地址" data-bv-notempty="true"
             data-bv-emailaddress="true" data-bv-emailaddress-message="邮箱地址格式不正确" data-bv-message="请输入邮箱地址"
             autocomplete="off">
    </div>
  </div>
  <div class="form-group">
    <label class="col-sm-3 control-label">密码:</label>
    <div class="col-sm-5">
      <input type="password" class="form-control" name="password" placeholder="请输入密码" data-bv-notempty="true"
             data-bv-stringlength="true" data-bv-stringlength-min="6" data-bv-stringlength-max="12" data-bv-message="请输入密码长度为6-12位"
             autocomplete="off">
    </div>
  </div>
  <div class="form-group">
    <div class="col-sm-offset-3 col-sm-5">
      <button type="button" class="btn btn-primary" id="saveBtn">保存</button>
    </div>
  </div>
</form>

步骤三:编写JavaScript代码

在JavaScript中,使用 BootStrapValidator 对表单进行验证:

//表单验证
$('#form').bootstrapValidator({
  //提示图标
  feedbackIcons: {
    valid: 'glyphicon glyphicon-ok',
    invalid: 'glyphicon glyphicon-remove',
    validating: 'glyphicon glyphicon-refresh'
  },
  //指定验证字段
  fields: {
    phone: {
      //验证规则
      validators: {
        notEmpty: {
          message: '手机号码不能为空'
        },
        regexp: {
          regexp: /^1[3456789]\d{9}$/,
          message: '请输入11位手机号码'
        }
      }
    },
    email: {
      //验证规则
      validators: {
        notEmpty: {
          message: '邮箱地址不能为空'
        },
        emailAddress: {
          message: '请输入正确的邮箱地址'
        }
      }
    },
    password: {
      validators: {
        notEmpty: {
          message: '密码不能为空'
        },
        stringLength: {
          min: 6,
          max: 12,
          message: '请输入长度为6-12位的密码'
        }
      }
    }
  }
});

//表单提交
$('#saveBtn').click(function () {
  $('#form').bootstrapValidator('validate');
  if ($('#form').data('bootstrapValidator').isValid()) {
    //表单提交操作
  }
});

示例说明一:手机号码输入验证

<input type="text" class="form-control" name="phone" placeholder="请输入手机号" data-bv-notempty="true"
       data-bv-regexp="true" data-bv-regexp-regexp="^1[3456789]\d{9}$" data-bv-regexp-message="手机号码格式不正确"
       data-bv-message="请输入手机号" autocomplete="off">

在此示例中,输入框会接受用户输入的手机号码,并在实时输入的同时进行验证。数据验证规则所设置的条件为:

  • 输入不能为空,即设置 data-bv-notempty="true"
  • 手机号码格式必须符合 ^1[3456789]\d{9}$ 的正则表达式,即设置 data-bv-regexp="true" data-bv-regexp-regexp="^1[3456789]\d{9}$" data-bv-regexp-message="手机号码格式不正确"

其中,data-bv-notempty="true" 表示该输入框的输入不能为空,data-bv-regexp="true" 表示需要使用正则表达式进行输入验证, data-bv-regexp-regexp="^1[3456789]\d{9}$" 表示该标签所进行的验证规则为 手机号码格式,至于 data-bv-regexp-message= 则出现在输入框下方的提示信息中。关于这些规则的具体设置,可参考 BootStrapValidator 的官方文档。

示例说明二:密码输入验证

<input type="password" class="form-control" name="password" placeholder="请输入密码" data-bv-notempty="true"
       data-bv-stringlength="true" data-bv-stringlength-min="6" data-bv-stringlength-max="12" data-bv-message="请输入密码长度为6-12位"
       autocomplete="off">

在此示例中,输入框会接受用户输入的密码,并在实时输入的同时进行验证。数据验证规则所设置的条件为:

  • 输入不能为空,即设置 data-bv-notempty="true"
  • 输入密码的长度区间应在 612 的范围内,即设置 data-bv-stringlength="true" data-bv-stringlength-min="6" data-bv-stringlength-max="12"
  • 密码长度不能超出 6-12 个字符,即设置提示信息为 请输入密码长度为6-12位

至于 data-bv-notempty="true" 的含义则已解释在前面了,这里就不再赘述。关于这些规则的详细设置,同样可以参考 BootStrapValidator 的官方文档。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用BootStrapValidator完成前端输入验证 - Python技术站

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

相关文章

  • 详解mvc使用JsonResult返回Json数据

    下面是详解mvc使用JsonResult返回Json数据的攻略: 步骤一:编写代码 在MVC的控制器中定义一个方法,例如: public JsonResult GetStudent() { var student = new Student { Name = "小明", Age = 18, Gender = "Male&quot…

    JavaScript 2023年5月27日
    00
  • Python Selenium操作Cookie的实例方法

    下面是详细讲解“Python Selenium操作Cookie的实例方法”的完整攻略: 什么是Cookie? 在网站上保存数据的一种机制,通常由服务器发送给用户的Web浏览器,并存储在本地机器上。当浏览器再次尝试连接到相同的服务器时,将发送之前存储的Cookie。 Selenium操作Cookie Selenium是一个支持Web驱动的自动化测试工具,包含一…

    JavaScript 2023年6月11日
    00
  • json对象与数组以及转换成js对象的简单实现方法

    下面是关于“json对象与数组以及转换成js对象的简单实现方法”的完整攻略: 1. 什么是JSON JSON,全称是JavaScript Object Notation,是一种轻量级的数据交换格式。它基于JavaScript语法的子集,包括对象、数组、字符串、数字、布尔值和null。 JSON被广泛应用于Web应用程序和API中,是一种常用的数据交换格式。现…

    JavaScript 2023年5月27日
    00
  • 记录-前端基础之10种排序算法

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 了解排序算法的优缺点和适用场景是非常重要的,因为在实际开发中,需要根据实际情况选择最合适的排序算法。不同的排序算法适用于不同的场景,有的算法适用于小规模的数据集,有的算法适用于大规模的数据集,有的算法适用于稳定排序,有的算法适用于不稳定排序,有的算法时间复杂度低,有的算法空间复杂度低,等等。了解这…

    JavaScript 2023年4月17日
    00
  • webpack实现热更新(实施同步刷新)

    webpack实现热更新是在开发过程中非常常见的需求,它可以在代码修改后自动刷新页面,使开发人员能够更方便地查看效果。下面是实现webpack热更新的完整攻略: 1. 配置webpack-dev-server webpack-dev-server是webpack中的一个开发服务器,它可以实现热更新,而我们只需要在启动webpack-dev-server时添加…

    JavaScript 2023年6月1日
    00
  • js实现具有高亮显示效果的多级菜单代码

    实现具有高亮显示效果的多级菜单代码需要以下步骤: 1.准备HTML结构 首先,需要准备一个基本的HTML结构。我们可以使用无序列表(ul)和有序列表(ol)来构建多级菜单。例如,下面是一个三级菜单结构: <ul> <li><a href="#">一级菜单</a> <ul> &lt…

    JavaScript 2023年6月11日
    00
  • javascript动态添加、修改、删除对象的属性与方法详解

    JavaScript动态添加、修改、删除对象的属性与方法详解 在JavaScript中,我们可以随时通过操作对象的属性和方法来动态地改变对象的行为。这篇文章将详细讲解如何添加、修改和删除对象的属性与方法。 1. 添加属性 我们可以通过两种方式为对象添加属性:点表示法和方括号表示法。 1.1 点表示法 点表示法是最常见的一种添加属性的方式,它将属性名作为对象的…

    JavaScript 2023年5月27日
    00
  • 很酷的javascript loading效果代码

    要实现一个炫酷的JavaScript loading效果,可以按照以下步骤进行: 第一步:编写HTML结构 <div id="loading-wrapper"> <div id="loading-text">Loading…</div> <div id="load…

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