2016-04-07 28 views
1

我有一個指令,用正則表達式驗證inputvalue。 現在我使用$ watch來檢查輸入值是否更改,但由於性能,我想嘗試另一種方法。

scope.$watch(attrs.ngModel, function (inputValue) { 
    formatter(inputValue); 
}); 

格式化功能簡單的檢查,如果inputValue將是通過正則表達式有效並調用$ setValidity()

我試圖用$解析器,但我發現改變輸入值,當值不能直接驗證,像這樣:

modelCtrl.$parsers.push(formatter); 
    if (scope[attrs.ngModel] && scope[attrs.ngModel] !== '') { 
     formatter(scope[attrs.ngModel]); 
    } 

有沒有什麼辦法在輸入值更改後立即驗證輸入?

+0

有y你試過了ng-pattern指令嗎? – Martin

+0

我確實做過,但我使用一個指令在多個輸入上動態使用它 – Matheno

回答