입력 필드가 유효하지 않은 것으로 표시된 경우 일부 동작을 수행해야하는 지시문을 만들려고합니다. 이 예를 들어 내가 입력이 소수 인 경우 확인하는 지시어가 있다고 가정 할 수 있습니다, 그리고 그것이 무효의 요소에 클래스를 추가하는 지시문을 만들려면 :AngularJS 지시문 유효 기간
이<input type="text" ng-model="primeNumber" validate-prime invalid-add-class="error">
유효성 검증 프라임은 사용을 파서 및 포맷터를 ng-model에 적용하여 모델의 유효성을 업데이트합니다.
이제 잘못된 추가 클래스 지시문을 사용하여 모델이 유효하지 않을 때 "오류"클래스를 추가하고 유효 할 때 제거하도록합니다. 즉, 모델 컨트롤러의 $ valid (또는 $ invalid) 속성을 확인해야합니다. 그러나, 나는이 일을하는 방법을 알아낼 수 없습니다. 나는 시도했다 :
link : function(scope, element, attrs, ctrl) {
ctrl.$watch("$valid", function(newVal, oldVal) {
//never fired
});
}
아마도 범위의 일부 변수를 볼 수 있지만 어떤 변수를 볼지 모르겠다.
모델의 유효 기간이 변경되면 어떻게 알림을받을 수 있습니까? 당신이 <form>
이있는 경우
귀하의 지침을 공유 할 수 있다면 좋을 것입니다! –
정확히 내가 이것을 어떻게 사용했는지 기억이 나지 않지만, CaioToOn의 두 번째 해결책은 이미 전체 링크 기능입니다. 두 번째 함수의 본문 만 유효성이 변경 될 때 원하는 모든 동작으로 채워야합니다. – Tiddo