ng-repeat和数据绑定不起作用

时间:2014-04-18 10:00:00

标签: angularjs angularjs-ng-repeat

我是Angularjs的新手并尝试做类似的事情:

<div ng-repeat="size in sizes">
    {{size.name}} 
    <input  ng-model="price_{{size.id}}" required type="number">
</div>

我已经了解了ng-repeat和数据绑定的工作原理。但不能理解如何解决这个问题,我的产品可能有很多尺寸,我想显示如此多的输入框作为尺寸的数量。这样我就可以输入每种尺寸的价格。

2 个答案:

答案 0 :(得分:1)

如果您只想指定每个尺寸的价格,为什么不将价格分配给大小的属性?

<input ng-model="size.price" type="number" required>

否则,您可以将价格定义为控制器中的对象:

$scope.prices = {};

并为每个ID创建一个属性:

<input ng-model="prices[size.id]" type="number" required>

答案 1 :(得分:1)

不是在模型中使用_连接变量,而是使用数据结构。例如,将price声明为对象,哪些属性是大小的id。在这种情况下,您可以写:

<input  ng-model="price[size.id]" required type="number">

或者将price声明为数组,并使用$index代替size.id,如果它不是那么重要:

<input  ng-model="price[$index]" required type="number">