当前位置: 首页 > 编程笔记 >

AngularJS验证信息框架的封装插件用法【w5cValidator扩展插件】

巴照
2023-03-14
本文向大家介绍AngularJS验证信息框架的封装插件用法【w5cValidator扩展插件】,包括了AngularJS验证信息框架的封装插件用法【w5cValidator扩展插件】的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了AngularJS验证信息框架的封装插件用法。分享给大家供大家参考,具体如下:

AngularJS 的表单验证规则

angular.js 的表单验证规则有 required(必填项),type="number"(必须为数字),type="email"(必须为邮箱地址),ng-max(最大值),ng-min(最小值),ng-max-length(最大长度),ng-min-length(最小长度),ng-pattern(正则验证)等等,而且angular写自定的验证规则也很简单。

具体的验证细节参考官方文档:http://docs.angularjs.org/guide/forms

AngularJS 默认的验证是实时的,如果输入框输入值验证通过会在input上加入class ng-valid,如果验证不通过会自动添加 class ng-invalid,输入框输入了值之后自动加上了 class ng-dirty,这样系统可以很简单的通过修改 ng-invalid ng-valid ng-dirty 三个样式达到验证提示的目的。但是如果验证失败需要提示一段文字,那么只有通过编写模板来达到。

Angular.js 验证的缺点

1. 提示信息是实时显示的,有时候我们更想要通过表单提交触发验证

2. 写验证提示信息需要写大量模板:

<div>
    Size (integer 0 - 10):
    <input type="number" ng-model="size" name="size"
       min="0" max="10" integer />{{size}}<br />
    <span ng-show="form.size.$error.integer">This is not valid integer!</span>
    <span ng-show="form.size.$error.min || form.size.$error.max">
     The value must be in range 0 to 10!</span>
</div>

w5cValidator 扩展插件的出现

Github上的源码地址为:https://github.com/why520crazy/w5c-validator-angular

目前版本v1.0.0

使用步骤:

1. 在项目中引用 w5cValidator.js

2. 在表单form上添加一个指令 w5c-form-validate 和 w5c-submit 如下所示:

<form class="form-horizontal cw-form demo-form" role="form" w5c-submit="js_save_entity(form_validate)"
         w5c-form-validate="" novalidate name="form_validate">
  <div class="form-group">
    <label class="col-sm-2 control-label">邮箱</label>
    <div class="col-sm-10">
       <input type="email" name="email" ng-model="entity.email" required="" class="form-control" placeholder="输入邮箱">
  </div>
</div>
<div class="form-group">
  <label class="col-sm-2 control-label">用户名</label>
    <div class="col-sm-10">
     <input required="" ng-pattern="/^[A-Za-z]{1}[0-9A-Za-z_]{1,19}$/" ng-model="entity.name" class="form-control" name="user_name" placeholder="输入用户名">
  </div>
</div>
  ...
</form>

w5c-submit 函数是表单验证成功后执行的事件,验证失败不会执行

3. 没了,使用就这么简单

w5cValidator 使用注意事项:

1. w5cValidator 默认的错误提示使用了bootstrap的样式和布局,使用到你的项目中需要修改默认的 show_error, remove_error 方法,可以是tip提示,可以是统一在某个地方显示等等

2. w5cValidator 可以设置光标移走input时是否显示错误提示,默认false

3. w5cValidator 自带了默认的提示信息,同时支持自定义验证规则提示信息

4. angular.js的所有验证信息都是保存在form表单中的,w5cValidator也是监控表单元素的属性来实现的,使用必须要设置form以及每个元素的name属性,否则错误信息就找不到对应的元素

5. 看下以下的代码你就能明白一切了:

w5cValidator.init({
     //blur_trig  : false,
     //show_error : function (elem, error_messages) {
     //
     //},
     //remove_error: function (elem) {
     //
     //}
});
w5cValidator.set_rules({
    user_name: {
       required: "输入的用户名不能为空",
       pattern : "用户名必须输入字母、数字、下划线,以字母开头"
    }
});

当然目前的 w5cValidator 还比较原始,NgNice的验证提示就是使用了w5cValidator

未来规划中的 w5cValidator 2.0

1. 现在只能设置全局的显示类型,将来要支持单个表单的配置项,整个项目偶尔会有提示信息不同的情况

2. 代码重构,以AngularJS的方式编写扩展

3. 添加一些 AngularJS没有的验证类型 如 repeat ,uniquecheck 等

希望本文所述对大家AngularJS程序设计有所帮助。

 类似资料:
  • 您好,我刚刚安装了composer的Yii2基本项目。我在苹果osx优胜美地10.10。尽管如此,我正试图按照Yii guide 2.0教程中的描述安装扩展,但我无法做到,原因是我不知道该把这条线放在哪里: PHPcomposer.phar需要--able-dist arturoliveira/yii2-tileslidemenu"*" 此方法表示在终端中找不到编写器。法尔。上面的线放在哪里? 当

  • 本文向大家介绍Yii框架中jquery表单验证插件用法示例,包括了Yii框架中jquery表单验证插件用法示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Yii框架中jquery表单验证插件用法。分享给大家供大家参考,具体如下: 运行效果图如下: 视图层: 控制器(验证唯一性): 更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总

  • 我正在尝试使用maven assembly插件生成zip文件程序集。我只剩下两个问题,我想知道是否有可能仅仅通过配置来解决,但作为最后的手段,我也在考虑编写自己的maven插件来扩展maven assembly插件 丢失的两块是 > 将与include模式匹配的每个依赖项放入其自己的 这是我的程序集的相关部分 这将使用

  • Kubernetes在设计之初就充分考虑了可扩展性,很多资源或操作都可以通过插件来自由扩展,比如认证授权、网络、Volume、容器执行引擎、调度等。

  •        扩展插件为LSV(LocaSpaceViewer)的扩展应用中心。扩展插件会定期更新各种实用小工具,方便广大朋友使用。插件功能可以独立获取授权,购买授权后,可以在LSV软件内直接使用。授权只和账号绑定,与所用电脑无关。 坐标地址批处理工具 功能介绍        地理编码指将结构化内容转换为经纬度坐标,逆地理编码指将经纬度坐标转换成结构化地址。使用该功能模块,可以快速批量把Excel

  • Simditor only integrates key features and uses extensions to support some optional features. Send your repository to us! We are happy to receive your extensions! Please make your extension has the sim