사용자 정의 유효성 검사

· 8년 전 · 1578
사용자 정의 유효성 검사

자신 만의 검증 기능을 생성하는 것은 좀 더 까다 롭습니다. 응용 프로그램에 새로운 지시문을 추가하고 특정 지정된 인수가있는 함수 내에서 유효성 검사를 처리해야합니다.


사용자 지정 유효성 검사 함수가 포함 된 사용자 지정 지시문을 만들고이를 사용하여 참조하십시오 my-directive.

값에 문자 "e"가 포함 된 경우에만 필드가 유효합니다.

<form name="myForm">
<input name="myInput" ng-model="myInput" required my-directive>
</form>

<script>
var app = angular.module('myApp', []);
app.directive('myDirective', function() {
return {
require: 'ngModel',
link: function(scope, element, attr, mCtrl) {
function myValidation(value) {
if (value.indexOf("e") > -1) {
mCtrl.$setValidity('charE', true);
} else {
mCtrl.$setValidity('charE', false);
}
return value;
}
mCtrl.$parsers.push(myValidation);
}
};
});
</script>

예제 설명 :
HTML에서는 새로운 지시문이이 속성을 사용하여 참조됩니다 my-directive.

자바 스크립트에서 우리는 새로운 지시어를 추가합니다 myDirective.

지시어의 이름을 지정할 때는 낙타의 경우 이름을 사용해야 myDirective하지만, 호출 할 때는 -분리 된 이름 을 사용해야 한다는 것을 기억하십시오 my-directive.

그런 다음 사용자가 지정하는 ngModelngModelController 인 객체를 반환합니다 .

어떤 인자를 취하는 링킹 함수를 만든다. 네번째 인자 mCtrl는 ngModelController,

그런 다음 myValidation하나의 인수를 취하는 이 함수의 경우 명명 된 함수를 지정하십시오 .이 인수는 입력 요소의 값입니다.

값에 문자 "e"가 포함되어 있는지 테스트하고 모델 컨트롤러의 유효성을 true또는로 설정 false합니다.

마침내 입력 함수가 변경 될 때마다 실행될 다른 함수의 배열에 함수를 mCtrl.$parsers.push(myValidation);추가합니다 myValidation.
|
댓글을 작성하시려면 로그인이 필요합니다. 로그인

퍼블리싱강좌

+
분류 제목 글쓴이 날짜 조회
AngularJS 8년 전 조회 1,410
AngularJS 8년 전 조회 1,214
AngularJS 8년 전 조회 1,524
AngularJS 8년 전 조회 1,469
AngularJS 8년 전 조회 1,443
AngularJS 8년 전 조회 1,374
AngularJS 8년 전 조회 1,245
AngularJS 8년 전 조회 1,425
AngularJS 8년 전 조회 1,074
AngularJS 8년 전 조회 1,276
AngularJS 8년 전 조회 1,283
AngularJS 8년 전 조회 1,640
AngularJS
[AngularJS]
8년 전 조회 1,391
AngularJS
[AngularJS]
8년 전 조회 1,609
AngularJS 8년 전 조회 1,579
AngularJS
[AngularJS]
8년 전 조회 1,671
AngularJS 8년 전 조회 1,421
AngularJS
[AngularJS]
8년 전 조회 1,387
AngularJS 8년 전 조회 1,414
AngularJS
[AngularJS]
8년 전 조회 1,462
AngularJS
[AngularJS]
8년 전 조회 1,506
AngularJS
[AngularJS]
8년 전 조회 1,494
AngularJS
[AngularJS]
8년 전 조회 1,036
AngularJS
[AngularJS]
8년 전 조회 1,413
AngularJS 8년 전 조회 1,306
AngularJS 8년 전 조회 1,282
AngularJS 8년 전 조회 1,455
AngularJS 8년 전 조회 1,229
AngularJS 8년 전 조회 1,289
AngularJS 8년 전 조회 1,390
🐛 버그신고