angular-validation 使用方法
来源:互联网 发布:国动通信网络招聘 编辑:程序博客网 时间:2024/05/29 16:33
angular-validation
angular-validation是AngularJS 提供的表单验证插件,可以根据多种规则对表单进行有效性验证,并对非法数据进行警告。类似的插件还有 angular-w5c-validator、angular-validation-match
本文主要介绍angular-validation的使用方法
安装方法
npm install angular-validation // Install with npmbower install angular-validation // Install with bower
使用方法
1、设置全局验证规则
将angular-validation\dist\angular-validation-rule.js 移到项目根目录下作为全局配置,因为angular-validation自带的配置信息很难满足我们的项目需要,我们往往需要自定义一些配置。
(function() { angular .module('your module') .config(['$validationProvider', function($validationProvider) {
例如我们可以在这里配置 不显示验证通过的message
//全局设置是否显示 success/error message $validationProvider.showSuccessMessage = false; // or true(default) $validationProvider.showErrorMessage = true; // or true(default)
$validationProvider 中主要有两个方法,setExpression(expression)——设置匹配规则,setDefaultMsg(message)——设置响应message。因此,我们可以在全局的配置文件中添加自定义的验证规则。
举个栗子:
minlength: function(value, scope, element, attrs, param) { ... }, maxlength: function(value, scope, element, attrs, param) { ... }, //原文只提供了 minlength 和 maxlength //我们添加length规则,匹配value的长度是否等于param length: function(value, scope, element, attrs, param) { return value && value.length == param; } ... // defaultMsg 中设置对应的 message length: { error: '字段长度不符合要求', success: '填写正确!' }
2、在HTML中使用
angular-validation的作者考虑的非常全面,考虑到了各种场景的验证习惯,详细的指令请参阅 API https://github.com/hueitan/angular-validation/blob/master/API.md,在此只介绍几个指令使用中需要注意的地方:
validator="required,number" //validator 支持多个规则valid-method="submit-only" //设置进行验证的方式,submit-only只在提交时验证,默认为watch方式<form name="newParamForm"> //angular-validation 检测的属性是name ,因此一定设置name <!-- 一定要设置name="describeMessage" --><textarea id="describe" name="describeMessage" ng-model="newInventoryParamCtrl.param.describe" class="form-control" rows="3" message-id="describeMessage" </textarea><span id="describeMessage"></span>
3、在js中使用
有些时候我们需要在controller中使用$validationProvider,使用的方法为:
.controller('index', ['$scope', '$injector', function($scope, $injector) { // Injector var $validationProvider = $injector.get('$validation'); //自定义验证规则(页面上只能写maxlength = "固定数值",这里可以写根据入参bitLimit设置不同的长度验证) $validationProvider.setExpression({ length: function(value, scope, element, attrs, param) { return value && value.length == vm.param.bitLimit; } }); //最后再提供一个规范的表单提交方法 $validationProvider.validate(form).success(function () { var restPromise = serviceResource.restCallService(URL,"ADD",vm.param); restPromise.then(function (data) { Notification.success("新建参数成功!"); $uibModalInstance.close(data.content); }, function (reason) { Notification.error(reason.code.message); }); }).error(function () { Notification.error("表单填写有误,请核对后再提交"); });
4、效果图
第一篇博客,需要你的赞美!!!
1 0
- angular-validation 使用方法
- angular form validation
- angular-validation校验数字
- jquery-Validation 的使用方法
- Angular Validation – Forms Validation with AngularJS (转)
- angular.foreach 循环使用方法
- angular.foreach 的使用方法
- Validation-jQuery表单验证插件使用方法
- Validation-jQuery表单验证插件使用方法
- JSR 303 - Bean Validation 简介及使用方法
- ng2-validation/angular2表单验证模块使用方法
- Angular中$broadcast和$emit的使用方法
- Validation
- validation
- Validation
- jQuery Validation PlugIn的使用方法及样例
- Angular.element和$document的使用方法分析,代替jquery
- angular懒加载模块me-lazyload.js使用方法详解
- Android中关于setLatestEventInfo()过时以及构建Notification的解决方法
- SqlSerVer 列与逗号分隔字符串 互相转换
- 检测连接头卡口装配质量
- recycleview瀑布流Item适应图片
- 想要网站增加更多的流量必须用手机用户开始下手
- angular-validation 使用方法
- redis的持久化、备份、容灾
- 事件流
- 如何直观的解释back propagation算法(三)
- Linux的slab分配器
- 【Java学习笔记】16:线程的协调
- C# WinForm开发系列之自定义无边框窗体(最大化,最小化,关闭,拉伸和移动的相关知识)
- JPEG压缩原理
- mysql中string和number的转换问题