最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

angular 基于ng-messages的表單驗證實例

 更新時間:2017年05月04日 10:18:09   作者:cfang  
本篇文章主要介紹了angular 基于ng-messages的表單驗證實例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

最近在學(xué)習(xí)angular,那么今天也算個學(xué)習(xí)筆記吧!

html

 <div class="form-group" ng-class="{'has-error': myForm.myName.$touched && myForm.myName.$invalid}">
  <label class="col-xs-2 control-label">name</label>
  <div class="col-xs-6">
    <input type="text" class="form-control" name="myName" ng-model="formData.username"
        placeholder="2-10個中英文字符,aaa會重名,必填"
        name-check minlength="2" maxlength="10" required>
  </div>
  <div class="col-xs-4 form-control-static text-danger" ng-messages="myForm.myName.$error"
           ng-messages-include="demos/form/error.html" ng-show="myForm.myName.$touched">
  </div>
</div>

ng-messages="myForm.myName.$error" 給出錯誤類型(required, char, exist, minlength)

error.html

<span ng-message="required">必填</span>
<span ng-message="char">非法字符</span>
<span ng-message="exist">名稱已存在</span>
<span ng-message="minlength">太短了</span>

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;
      }
    }
  }
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • AngularJS 2.0新特性有哪些

    AngularJS 2.0新特性有哪些

    本文介紹了其在AtScript、改善依賴入駐、Annotations、路由方案等方面的改變。雖然不知道打破原有是否是件好事,不過由于不向后兼容,我們需要為遷移做好計劃
    2016-02-02
  • AngularJS入門教程之Scope(作用域)

    AngularJS入門教程之Scope(作用域)

    本文主要介紹AngularJS Scope(作用域),這里對Score知識做了詳細(xì)介紹,并提供實例代碼,有需要的小伙伴可以參考下
    2016-07-07
  • AngularJS入門教程之迭代器過濾詳解

    AngularJS入門教程之迭代器過濾詳解

    本文主要介紹AngularJS 迭代器過濾,這里提供了詳細(xì)的知識資料,并附示例代碼,有需要的小伙伴可以參考下
    2016-08-08
  • Angular2管道Pipe及自定義管道格式數(shù)據(jù)用法實例分析

    Angular2管道Pipe及自定義管道格式數(shù)據(jù)用法實例分析

    這篇文章主要介紹了Angular2管道Pipe及自定義管道格式數(shù)據(jù)用法,結(jié)合實例形式詳細(xì)分析了Angular2管道與純管道相關(guān)概念、語法及使用技巧,需要的朋友可以參考下
    2017-11-11
  • AngularJS自定義控件實例詳解

    AngularJS自定義控件實例詳解

    這篇文章主要介紹了AngularJS自定義控件,結(jié)合實例形式詳細(xì)分析了AngularJS自定義指令與模板操作的相關(guān)函數(shù)與使用技巧,需要的朋友可以參考下
    2016-12-12
  • 淺談Angular的$q, defer, promise

    淺談Angular的$q, defer, promise

    本文主要對Angular的 $q, defer, promise進(jìn)行實例分析介紹。具有很好的參考價值,需要的朋友一起來看下吧
    2016-12-12
  • Angular實現(xiàn)的自定義模糊查詢、排序及三角箭頭標(biāo)注功能示例

    Angular實現(xiàn)的自定義模糊查詢、排序及三角箭頭標(biāo)注功能示例

    這篇文章主要介紹了Angular實現(xiàn)的自定義模糊查詢、排序及三角箭頭標(biāo)注功能,涉及AngularJS針對頁面table元素的遍歷、查詢、判斷、排序等相關(guān)操作技巧,需要的朋友可以參考下
    2017-12-12
  • Angular實現(xiàn)form自動布局

    Angular實現(xiàn)form自動布局

    這篇文章主要介紹了Angular實現(xiàn)form自動布局的相關(guān)資料,以代碼片段的形式分析了Angular實現(xiàn)form自動布局的實現(xiàn)方法,感興趣的小伙伴們可以參考一下
    2016-01-01
  • Angularjs之ngModel中的值驗證綁定方法

    Angularjs之ngModel中的值驗證綁定方法

    今天小編就為大家分享一篇Angularjs之ngModel中的值驗證綁定方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • AngularJS的內(nèi)置過濾器詳解

    AngularJS的內(nèi)置過濾器詳解

    在我們開發(fā)中經(jīng)常需要在頁面顯示給用戶的信息需要一定處理格式化,才能顯示給用戶。在angularjs中為我們提供了叫filter的指令,讓我們能夠很輕易就能做到著一些列的功能,angularjs內(nèi)部為我們提供了number等很多內(nèi)置的filter。
    2015-05-05

最新評論

宝坻区| 武强县| 明水县| 隆尧县| 嘉祥县| 宜兰市| 木兰县| 绵阳市| 丽江市| 巫溪县| 呼图壁县| 枣阳市| 仁怀市| 汪清县| 芜湖县| 五莲县| 连城县| 韶关市| 砀山县| 镇江市| 武强县| 金昌市| 宜州市| 南召县| 西乌珠穆沁旗| 兴隆县| 吴旗县| 邵东县| 淮北市| 孟连| 买车| 合作市| 陇西县| 华容县| 搜索| 贵港市| 普陀区| 同德县| 明光市| 堆龙德庆县| 徐闻县|