1
我正在創建一個與required
幾乎相反的驗證指令。我想確保在用戶可以保存之前清除textarea。自定義驗證 - 「空白」指令
我能夠設置窗體的$invalid
標誌。我也想在控件上設置$invalid
標誌。
他是我到目前爲止有:
application.directive('blank', function() {
return {
require: 'ngModel',
restrict: 'A',
link: function (scope, elem, attrs, ctrl) {
var value = elem.val();
var isBlank = !value || !value.trim();
ctrl.$setValidity('blank', isBlank);
return undefined;
}
};
});
我如何可以設置控制的有效性,所以我可以用它來驗證,如:
$scope.hasBlankError = function (control) {
return $scope.isSubmitted && control.$error.blank;
};
這不正是我想要的。我只是希望我知道這段代碼在做什麼。我不知道'push'和'unshift'操作符在做什麼。 –
有一個屬性類似於'ng-required'也是有用的,所以我可以有條件地打開這個屬性。我只希望它在用戶提交後打開。你能指點我在定義這個功能的角度源代碼控制中的位置嗎? –
這不是非常有效。 validator函數將被調用3次,每次ng-change - 一次是$ formatters,一次是$ parsers,另一個是$ observe。你應該把它推到$解析器。 –