博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
angular 基于ng-messages的验证
阅读量:7121 次
发布时间:2019-06-28

本文共 1250 字,大约阅读时间需要 4 分钟。

html

ng-messages="myForm.myName.$error" 给出错误类型(required, char, exist, minlength)

error.html

必填非法字符名称已存在太短了

directive name-check 利用ngModel 的$validators,& $asyncValidators 添加自定义验证

app.directive('nameCheck', nameCheck);nameCheck.$inject = ['HttpService', '$q'];function nameCheck(HttpService, $q){    var NAME_REG = /^[a-zA-Z\u4e00-\u9fa5]+$/;    return {        restrict: 'A',        require: 'ngModel',        link:function($scope,element,attrs,ctrl){            ctrl.$validators.char = function(modelValue, viewValue) {                var value = modelValue || viewValue;                if(!NAME_REG.test(value)){                    return false;                }                return true;            };            ctrl.$asyncValidators.exist = function(modelValue, viewValue){                var value = modelValue || viewValue;                var deferred = $q.defer();                HttpService.get('api/users/' + value).then(function(res) {                    if(res.isExist){                        deferred.reject(false);                    }                    deferred.resolve(true);                })                return deferred.promise;            }        }    }}

转载地址:http://mwsel.baihongyu.com/

你可能感兴趣的文章
2-设置文件类型扩展名
查看>>
[python基础]关于中文编码和解码那点事儿
查看>>
MySQL集群架构-DRBD+headbeat +lvs+keepalived
查看>>
[LUOGU] P2886 [USACO07NOV]牛继电器Cow Relays
查看>>
31. Next Permutation
查看>>
3140: [Hnoi2013]消毒
查看>>
Interactive cloth
查看>>
字符编码【转载】
查看>>
mysql中的事物处理
查看>>
Android 车联网天气
查看>>
POJ 2430 状压DP
查看>>
C++Primer第5版学习笔记(三)
查看>>
Centos7系统介绍
查看>>
GIT简单实用
查看>>
Sonar - 部署常见问题及解决方法
查看>>
IOS 学习笔记(3) 视图UITabbarController
查看>>
逻辑运算&map函数&filter函数&reduce函数
查看>>
从“在winform里打开网页功能”引发的问题探究
查看>>
contiki makefile框架分析 < contiki学习之一 >
查看>>
md5 加密 swfit版
查看>>