我有一个简单的ng-repeat,带有一个拒绝功能的单选按钮。以下工作完全正常:
<label class="radio-inline">
<input type="radio" ng-model="display_as" name="display_as" value="1">position 1
<input type="radio" ng-model="display_as" name="display_as" value="2">position 2
</label>
<pre>{{ display_as }}</pre>
但是下面我看到两个单选按钮(正如预期的那样),我可以选择两个单选按钮中的任何一个,但$scope.display_as
仍未定义。
<label ng-repeat="position in user.positions" class="radio-inline">
<input type="radio" ng-model="display_as" name="display_as" value="{{ $index }}">{{ position.name }}
</label>
<pre>{{ display_as }}</pre>
为什么哦为什么?!任何人都可以告诉我在ng-repeat
中我做错了什么吗?
答案 0 :(得分:3)
ng-repeat
为$scope
的每次迭代创建一个单独的子user.positions
。这些$scope
中没有一个具有display_as
属性。
您可以使用$scope
访问ng-repeat
内的父$parent
。在您的情况下:$parent.display_as
。