angular 基于ng-messages的表单验证实例
最近在学习angular,那么今天也算个学习笔记吧!
html
name
最近在学习angular,那么今天也算个学习笔记吧!
html
name
ng-messages="myForm.myName.$error"给出错误类型(required,char,exist,minlength)
error.html
必填 非法字符 名称已存在 太短了
directivename-check利用ngModel的$validators,&$asyncValidators添加自定义验证
app.directive('nameCheck',nameCheck); nameCheck.$inject=['HttpService','$q']; functionnameCheck(HttpService,$q){ varNAME_REG=/^[a-zA-Z\u4e00-\u9fa5]+$/; return{ restrict:'A', require:'ngModel', link:function($scope,element,attrs,ctrl){ ctrl.$validators.char=function(modelValue,viewValue){ varvalue=modelValue||viewValue; if(!NAME_REG.test(value)){ returnfalse; } returntrue; }; ctrl.$asyncValidators.exist=function(modelValue,viewValue){ varvalue=modelValue||viewValue; vardeferred=$q.defer(); HttpService.get('api/users/'+value).then(function(res){ if(res.isExist){ deferred.reject(false); } deferred.resolve(true); }) returndeferred.promise; } } } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。