У меня есть эта форма с паролем и поле confirmPassword. Я хочу сравнить поле пароля с полем confirmPassword. У меня небольшая проблема, потому что у меня есть ng-show, который должен показывать только ошибку «Пароли не совпадают», когда пароль не совпадает, но в тот момент, когда сообщения всегда отображаются.Угловая Сравнить Директива по Поручению
<label class="control-label">Password *
<div class="row m-b-15">
<div class="col-md-12">
<input type="text" placeholder="Password" name="password" required="" ng-model="user.password" class="form-control"/>
</div>
</div>
<label class="control-label">Re-enter Password *</label>
<div class="row m-b-15">
<div class="col-md-12">
<input type="text" placeholder="Re-enter Password" name="confirmPassword" required="" ng-model="user.confirmPassword" ka-compare-to="user.password" class="form-control"/>
<div ng-show="signUpForm.confirmPassword.$error" class="form-group has-error">
<label class="control-label">Passwords Do Not Match</label>
</div>
</div>
</div>
</label>
.directive('kaCompareTo', function(){
return {
restrict: 'A',
require: 'ngModel',
scope: {
otherModelValue: '=kaCompareTo'
},
link: function(scope, element, attributes, ngModel){
ngModel.$validators.kaCompareTo = function(modelValue){
return modelValue === scope.otherModelValue;
};
scope.$watch("otherModelValue", function() {
ngModel.$validate();
});
}
}
})
Заранее спасибо.
чек на '$ submitted' также в нг-шоу. Можете также посмотреть, как работает «ng-messages» – charlietfl