required
와 ng-required
(양식 검증) 의 차이점은 무엇입니까 ?
required
와 ng-required
(양식 검증) 의 차이점은 무엇입니까 ?
답변:
AngularJS 양식 요소는 required
유효성 검증 기능을 수행하기 위해 속성을 찾습니다 . 부울 테스트에 따라 속성 ng-required
을 설정할 수 있습니다 required
(예 : 필드 A ( 예 : 학생 번호) -필드 A에 특정 값이있는 경우 - "학생"을 선택했을 경우 )
예를 들어, <input required>
와 <input ng-required="true">
본질적으로 같은 것입니다
이것이 왜 이런 식 인지 궁금해 하는 경우 (및 단순히 <input required="true">
또는 아닙니다 <input required="false">
), HTML의 한계 때문입니다- required
속성에는 값이 없습니다-HTML 존재에 따라 요소가 필요하다는 단순한 존재 수단- 따라서 각도에는 필요한 값을 설정 / 설정 해제하는 방법이 필요합니다 ( required="false"
유효하지 않은 HTML 일 것입니다)
<form method="post" action="/foo" novalidate>
. 다시, 이것은 angularJS와 관련이없는 html5 속성입니다.
ng-required
범위 / 컨트롤러 변수를 가리킬 때 Angular는 변경 사항을 모니터링하고 그에 따라 필요한 속성을 설정해야합니다. 간단한 HTML required
속성 의 경우 유연성이 없습니다. 아니? 우리가 같은 주제에있는 동안 ng-attr-required
어떨까요? 정확히 동일 ng-required
합니까?
tiago의 답변에 대한 애드온을 만들고 싶습니다 .
동일한 속성을 사용 ng-show
하고 추가하는 요소를 숨기고 있다고 가정하십시오 required
.
<div ng-show="false">
<input required name="something" ng-model="name"/>
</div>
다음과 같은 오류가 발생합니다.
name = ''의 유효하지 않은 양식 컨트롤은 초점을 맞출 수 없습니다
요소 required
에 대한 유효성 검사를 강요 할 수 없기 때문 hidden
입니다. 를 사용 ng-required
하면 필요한 유효성 검사 를 조건부로 쉽게 적용 할 수 있습니다 .
ng-if
이며 ng-show
/ 대신 ng-hide
잠재적 문제를 회피하기 위해 사용할 수도 있습니다 .
HTML 속성은 required="required"
이 필드가 유효 형태 위해서는 필요하다는 브라우저를 말하는 문입니다. ( required="required"
XHTML 형식이며 사용하는 required
것은 동일합니다)
각도 속성 ng-required="yourCondition"
수단 '애드 팍 (yourCondition)'과는 HTML 특성을 설정 동적으로 당신이 당신의 상태에 따라하십시오.
또한 HTML 버전은 혼란 스럽 습니다. 또는 조건부 로만 쓸 수 없으며 속성의 존재 만 중요합니다 (현재는 true를 의미 함)! 이것은 Angular가 당신을 도와주는 곳입니다 .required="true"
required="false"
ng-required