AngularJS - ng-repeat에 의해 생성된 라디오 버튼 선택 시 모델이 업데이트되지 않음
ng-repeat을 사용하여 여러 개의 라디오 버튼을 생성하고 그 중 하나가 선택되면 모델을 업데이트하려고 합니다.이것은 효과가 없는 것 같습니다.
무선 입력이 ng-repeat에 의해 생성되는 것이 아니라 하드코딩되어 있는 경우에도 같은 마크업이 정상적으로 동작합니다.
이 방법은 다음과 같습니다.
<input type="radio" ng-model="lunch" value="chicken" name="lunch">
<input type="radio" ng-model="lunch" value="beef" name="lunch">
<input type="radio" ng-model="lunch" value="fish" name="lunch">
{{lunch}}
이것은, 이하에 해당하지 않습니다.
<input type="radio" ng-model="lunch" ng-repeat="m in meat" value="m" name="lunch">
{{lunch}}
다음 URL에서 jsfiddle을 참조하십시오.http://jsfiddle.net/mark_up/A2qCS/1/
어떤 도움이라도 주시면 감사하겠습니다.
감사해요.
<div ng-controller="DynamicCtrl">
<input type="radio" ng-model="$parent.lunch" ng-repeat="m in meat"
ng-value="m" name="lunch">
{{lunch}}
</div>
효과가 있을 거야.
제가 알기로는ng-repeat
자체 생성$scope
.그래서 를 참조해 주세요.$parent $scope;
Yes, AngularJS가 까다롭다.또, 이 설정을 변경할 필요가 있습니다.value
로.ng-value
너무.
위의 문제는 여기서 논의되었다
이는 ng-repeat에 의해 새로운 스코프가 생성되기 때문입니다.기본적으로는 각각<input>
는 자체 내부 스코프에 selectedOption 값을 작성합니다.이 문제를 해결하려면 해당 값에 대한 새 컨테이너 개체를 만듭니다.예를 들어 컨트롤러로 선언할 수 있습니다.
$scope.data = {selectedOption: x};
그런 다음 템플릿에서ng-model="data.selectedOption"
이렇게 하면 ng-model이 갱신됩니다.:)
이것은 까다롭다
값을 ng-value로 치환하기만 하면 됩니다.
언급URL : https://stackoverflow.com/questions/17674899/angularjs-model-not-updating-on-selection-of-radio-button-generated-by-ng-repe
'programing' 카테고리의 다른 글
반응에서 여러 줄 텍스트 문자열을 렌더링하는 방법 (0) | 2023.03.13 |
---|---|
React.createElement' children 파라미터 사용방법(jsx 없음) (0) | 2023.03.08 |
phpmyadmin에서 필드를 열면 mySQL 데이터베이스가 변경되지만 변경되지 않습니다. (0) | 2023.03.08 |
http 설정 방법모든 API 엔드포인트에 대해 ResponseWriter Content-Type 헤더를 글로벌하게 사용하시겠습니까? (0) | 2023.03.08 |
jQuery.ajax - 모든 요소를 수동으로 입력하지 않고 형식으로 전송합니다. (0) | 2023.03.08 |