2014-04-15 6 views
3

이 튜토리얼 을 따르고 있지만 대괄호가있는 양식 필드가 있습니다 (예 : company_bundle_task [timeStart] [date] - Symfony2로 렌더링 됨). 해당 필드의 유효성 검사가 작동하지 않습니다. 예를 이것에 대한 : 해당 필드가 등/빈/유효하지 않은 경우에도AngularJS 유효성 검사 및 필드 이름 대괄호로

<span class="help-block" ng-show="company_bundle_task.company_bundle_task[timeStart][date].$invalid">Required</span> 

또는

<span class="help-block" ng-show="company_bundle_task.company_bundle_task[timeStart][date].$error.required">Required</span> 

그들은 표시되지 않습니다

.

+0

입력란의 코드를 작성해주십시오. symphony로 렌더링 된 PHP 결과는 "모델"에 매핑되어야하고 "이름"에 대한 유효성 검사는 다를 수 있습니다. – pdem

+0

mmmm

+0

감사합니다. 따라서 양방향 데이터 바인딩이 필요하지 않은 것으로 보입니다. Il은이 정보를 제공하는 것에 답할 것입니다. – pdem

답변

7

a.example이의 것과 동일하기 때문에 당신은, 인용 부호로 이름을 탈출해야 [ '예'] 당신이 쓸 수 있습니다 :

<span class="help-block" ng-show="company_bundle_task['company_bundle_task[timeStart][date]'].$error.required">Required</span> 
+0

대단히 감사합니다! :) – mmmm

0

마티, 당신은 .... 시도하고 같은 긴 표현을 평가하는 것보다 기능을 대신 사용 ... 당신의 범위와 컨트롤러에 연결되어 간단한 함수를 호출하고 그 안에 올바르게 표현을 평가해야

나는 보통,이 식을 작성하려고하지 않지만 기능은 ...

안부

+0

언제 호출해야합니까? 양식을 제출 한 후? 프로의 장점은 포커스/흐림 (동적으로, 전체 양식을 제출할 필요가 없음)에서 작동한다는 것입니다. – mmmm

+0

아니요 .. n은 ng-show에서 함수를 호출해야하며 페이지가 열릴 때 평가됩니다 ng-show에서 추가 한 표현식은 페이지 렌더링 중에 평가됩니다. –

+0

제 조언은이 표현식을 함수에 추가 한 다음 디버거를 추가하고이 표현식이 귀하의 케이스에서 실패한 이유를 확인하는 것입니다. –