为了让ASP.NET MVC正确绑定表单帖子上的项目列表,name属性必须符合
的要求。name='Show.Days[0].OpenHour'
name='Show.Days[1].OpenHour'
用户可以在表单字段中输入节目的天数,然后更新模型和ng-repeat。 我希望能够在名称字段中插入适当的索引,例如
name='Show.Days[$index].OpenHour'
这是否可以用角度?
答案 0 :(得分:5)
使用name="Show.Days[{{$index}}].OpenHour"
。有了这个,AngularJS会评估$index
并用正确的值替换它。
答案 1 :(得分:1)
您似乎忘记在视图中使用{{
和}}
包装表达式。你需要这样的东西吗?
var app = angular.module('myApp', []);
app.controller("myCtrl", function ($scope) {
$scope.Show = {
Days: [
{OpenHour: '8am'},
{OpenHour: '10am'}
]
};
});

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.min.js"></script>
<div ng-app="myApp">
<div ng-controller="myCtrl">
<div ng-repeat="day in Show.Days">
<input type="text" ng-model="Show.Days[$index].OpenHour" name="{{Show.Days[$index].OpenHour}}">
</div>
</div>
</div>
&#13;
还是喜欢这个?
var app = angular.module('myApp', []);
app.controller("myCtrl", function ($scope) {
$scope.Show = {
Days: [
{OpenHour: '8am'},
{OpenHour: '10am'}
]
};
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.min.js"></script>
<div ng-app="myApp">
<div ng-controller="myCtrl">
<div ng-repeat="day in Show.Days">
<input type="text" ng-model="Show.Days[$index].OpenHour" name="Show.Days[{{$index}}].OpenHour">
</div>
</div>
</div>
&#13;