从视图填充angularJS模型中的数组

时间:2014-07-15 13:32:20

标签: angularjs

我在客户端构建angularJS,在后端构建asp.net。我有一个aspx转发器,在服务器端生成html。我想填充和角度模型数组,以便它可以用于制作客户端交互式应用程序。

            <div ng-controller="myController">
                    <input type="number"id='1' ng-model="number"/>
                    <input type="number"id='2' ng-model="number"/>
                    <input type="number"id='3' ng-model="number"/>
                    <input type="number"id='4' ng-model="number"/>
                    <input type="number"id='5' ng-model="number"/>                        

            </div>

我想在模型的数组中包含所有数字。是否可以从已生成的html中填充模型数组。

2 个答案:

答案 0 :(得分:3)

使$ scope.numbers成为一个数组并使用ng-repeat,如下所示:$scope.numbers = [1,2,3,4,5];

在你的标记中:

<div ng-controller="myController" ng-repeat="number in numbers">
                    <input type="number" id="number{number}" ng-model="number"/>
</div>

答案 1 :(得分:0)

在服务器端生成html代码时,可以使用ngInit在范围内放置一些数据。 你可以在服务器端写一些东西:

<div ng-controller="myController" ng-init="myData=[{type:'number', id:1, model:'number1'},{type:'number', id:2, model:'number2'}]">
  <div>{{numbers}}</div>
  <input ng-repeat="item in myData" type="{{item.type}}" id="{{item.id}}" ng-model="numbers[item.model]"/>
</div>   

你的控制器看起来像这样

app.controller('myController', function($scope) {
  $scope.numbers = {};
});