我正在尝试将输入元素的变量列表绑定到数组。假设我有一个数组
$scope.set = [{id: 1, value: 'foo'}, {id: 2, value: 'bar'}]
我想遍历该数组并为每个项目创建一个输入元素。
<div ng-repeat="item in set">
<input id="{{item_$index}}" ng-model="myModel.items[]"/>
</div>
我意识到上面的ng-model属性不正确。完成此要求的正确方法是什么?
答案 0 :(得分:4)
您需要在item.value
中使用ng-model
,以便它可以绑定其值,并且在更新时元素item
值会发生变化。
<强>标记强>
<div ng-repeat="item in set">
<input id="{{item.id}}" ng-model="item.value"/>
</div>
答案 1 :(得分:1)
你在寻找这样的东西吗?
ng-model="item.value"
答案 2 :(得分:1)
您的代码看起来不错,但item_$index
未定义。如果您想要ng-repeat循环中的索引,请使用{{$index}}
。请参阅ngRepeat docs了解您可以使用的“魔法”绑定。或者只使用item.id
。
ng-model可以是item
的任何内容。
例如ng-model="item"
或ng-model="item.value"
。由于input
默认为type="text"
,item.value
似乎是最合理的选择。