1

在Angular中,我試圖驗證模糊區域的值。我有一個客戶名單,我想檢查該字段中的模型值是否在我的客戶名單中。如果不是,我想將有效性設置爲false。在Angular中自定義驗證功能

我知道ng-model-options="{updateOn: 'blur'}存在,但是我不能使用它,因爲這個字段是一個前面的類型,所以它必須根據模型進行更新。驗證是模糊處理需要發生的事情。

的答案似乎是:

  1. 寫它作爲控制器和使用$ setValidity的功能就像你在一個指令。使用ng-blur在輸入字段中觸發該功能。

    - 但是,我一直在運行自定義驗證的示例(如果模型值與列表中的某個不匹配,則使該字段無效)僅寫入指令。是否有作爲函數寫入的自定義驗證示例?

  2. 編寫一個只在模糊時觸發的指令。

但是,我無法找到的例子是既做這些事情。

有沒有人有自定義驗證的例子作爲一個函數或只更新領域模糊的指令?

我發現這個鏈接,自定義的驗證非常有益的,但我仍然有一個功能和指令之間的區別同樣的問題:How to add custom validation to an AngularJS form?

**我的預輸入工作,我不需要幫助越來越UIB-預輸入工作,而是附帶的自定義驗證

回答

1

這裏引發了模糊的自定義驗證的例子:

angular.module('myApp', []) 
.directive('customValidation', function() { 
    return { 
     require: 'ngModel', 
     link: function(scope, el, attrs, ngModel) { 
      el.bind('blur', function(event) { 
       scope.$apply(function() { 
        ngModel.$setValidity('customValidation', scope.name == 'test'); 
       }); 
      }) 
     } 
    }; 
}); 

Plunk