2014-12-09 2 views
0

ng-switch 내부에 select 태그를 넣으면 ng-switch 외부의 ng-model 태그에 대해 양방향 바인딩이 작동하지 않습니다.선택된 태그의 선택된 값이 angularjs의 바깥 쪽 스위치를 변경하지 않습니다

코드이 fiddle에서

<div ng-switch on="OutputStep"> 
       <div ng-switch-when="0"> 
        Switch Step One 
       </div> 
       <div ng-switch-when="1"> 
        Switch Step Two<br/> 
         <select ng-model="SelectedReviewOption" ng-options="review as review.DisplayValue for review in ReviewOptions"> 
         </select> 
         Selected Value : {{SelectedReviewOption.DisplayValue}}    
       </div>       
</div> 
<button ng-click="OutputStep = '0'" ng-disabled="OutputStep == '0'"> 
Back 
</button> 
<button ng-click="OutputStep = '1'" ng-disabled="OutputStep == '1'"> 
Next 
</button> 
Selected Value Outside Switch : {{SelectedReviewOption.DisplayValue}} 

다음 참조 2 스위치 페이지를 보려면 다음 버튼을 클릭하십시오. 선택 태그에서 값을 변경하십시오. 변경된 값을 스위치 외부에 표시 할 수 없음을 확인하십시오. -

+0

를 사용합니다. 구체적인 내용은 없습니다 .. 유스 케이스를 만드십시오. 덕분에 –

+1

여기 피들 http://jsfiddle.net/shashanktriv/cobc0u3p/5/ ...이 다음 단추를 두 번째 스위치 페이지를 보려면 클릭하십시오. 선택 태그에서 값을 변경하십시오. 변경된 값을 스위치 외부에 표시 할 수 없음을 확인하십시오. –

+1

jsfiddle에서 관련 코드를 추출하여 질문에 게시하십시오. jsfiddle 링크가 변경되거나 유효하지 않은 경우 다른 사람에게 아무런 의미가 없습니다. –

답변

0

ng 스위치가 별도의 범위를 생성하므로 nag 모델에서 $ parent.var_name을 사용하고 변수가 ng- 초기화 또는 (컨트롤러에서) 뭔가 여기

1

외부 부모 범위에 도착 $ 부모를 사용할 필요가 입니다. ' 모델에서 프로토 타입 상속이 작동하는지 확인합니다. 그래서, 당신의 jsfiddle에서

<input type="text" ng-model="someObj.prop1"> rather than 
<input type="text" ng-model="prop1"> 

working fiddle

understanding scope