2

例如,我有一个控制器,它有一个名为数组属性的控制器,我在一个带有一'houses'ng-repeat单选按钮(真/假,或者你有什么)的表格行上使用它。模型应该在那些单选按钮上,以便选择它们中的任何一个将设置模型数组中相应项目的值?我尝试将模型设置为:

ng-model="array[{{$index}}]"

但这没有用。我取出了{{ }}并只留下了文字字符串'$index'。

这在Angular中甚至可能吗?

4

2 回答 2

2

它应该在没有花括号的情况下工作。我做了一个Plunker

$scope.houses = [true, false, true, false, false];
<ul>
  <li ng-repeat="house in houses">
    Checked: <input type="checkbox" ng-model="houses[$index]" />
  </li>
</ul>

{{houses}}

我不明白您是否有一个复杂的对象并想要设置它的属性(即ng-model="houses[$index].checked"。如果是这种情况,那么您应该只使用迭代器(即ng-model="house.checked"),因为house它将遍历每个数组对象。

于 2013-03-31T20:20:16.763 回答
0

实际上,对于这种特殊情况,存在一个问题。这似乎是不可能的,单选按钮有自己的范围,因为ng-repeat.

有一个使用检查属性的替代解决方案:见代码

于 2013-03-31T20:15:08.190 回答