모델 및 모델 속성을 기반으로 양식 입력을 생성하는 양식 입력 지시문을 작성하려고했습니다. 예를 들어 ,각도 - 양식 입력 지시문을 사용할 때 양식 유효성 검사 문제
- 필드 이름은 입력 텍스트의 경우, 필드 목록 인 경우 입력 HTML 컨트롤을 반환 지시어,
- 는, 그것은 선택 상자를 반환합니다 등
이러한 입력은보기에서 ng-repeat를 사용하여 생성됩니다. 입력은 범위의 모델에 바인딩됩니다. 이것은 잘 작동합니다. 그러나 양식 유효성 검사가 실패합니다. 즉 입력 컨트롤이 유효하지 않은 경우 기본 양식은 양식이 유효 함을 여전히 나타냅니다.
나는 문제를 설명하기 위해 간단한 plunkr을 뒀다 - http://plnkr.co/edit/R3NTJK?p=preview
참고 : 입력 이름 필드가 동적 범위 모델에서 생성 될 때 실제로 양식을 내포했다.
나는 지난 2 일 동안 이것을 잡으려고 노력했다. 그리고 이것은 정말로 나에게 열중하고있다.
나는 뭔가를 놓치고 있는지 잘 모르겠다.
일부 사람이 나를 도와 줄 수 있다면 정말 감사하겠습니다.
주셔서 감사합니다. 하지만, 범위를 기반으로 템플릿을 동적으로 생성해야합니다. 즉 템플릿은 입력 텍스트/라디오/체크 박스, 선택, 날짜 피커 등이 될 수 있습니다. 범위에서 사용할 수있는 필드 유형을 기반으로합니다. 이 경우 템플릿 문자열을 하드 코드 할 수 없으며 범위에 액세스 할 수있는 링크 함수를 사용하여 템플릿 문자열을 생성해야합니다. – Gautham
@Gautham, 링크 기능에서 작동시키는 방법을 알아 냈습니다. 그러나 왜 그 이유를 완전히 이해하지 못합니다. 업데이트 된 답변보기 –
@ MarkRajcok, 안녕하세요. 귀하의 답변에 감사드립니다. 비슷한 문제가 발생하여 솔루션이 정상적으로 작동합니다. 하지만 궁금 해서요. 왜 replaceWith를 $ 컴파일 전에 호출해야하는지 알아 냈습니까? – Artem