我是angularJS的新手
我有代码;所有这都是错的。 我正在创建一个带有选项的json对象。
我有一个名为“match”的json对象,其属性为“lineup”。
当您选中任何播放器的复选框时,您将此播放器添加到阵容属性中,如:
lineup:[{uid:1,pos:0},{uid:2,pos:0}]
我想知道的是如何将select分配给lineup
数组中的特定项目。例如,如果我更改播放器1的选择,则阵容将更改为:
lineup:[{uid:1,pos:2},{uid:2,pos:0}]
顺便说一句,我知道我可以使用ng-options
作为select指令,但这是我来到这里之前的最后一个代码。
<ul class="list-group" ng-if="match.formation > 0">
<li class="list-group-item" ng-repeat="p in players track by $index">
<input type="checkbox" ng-model="p.lineup"
ng-change="setLineup(p,$index)"
ng-disabled="match.lineup.length > 10 && (p.lineup == 0 || !p.lineup)" />
{{p.player}}
<select ng-model="" class="pull-right">
<option ng-repeat="e in NotSelectedPosition() track by $index"
value="{{e.id}}">{{$index+1+'.- '+e.name}}</option>
</select>
</li>
编辑: 玩家也是一个json对象:
$scope.players = [{uid:1,lineup:false,name:'player1'},
{uid:2,lineup:false,name:'player 2'},etc
];
形成只是一个整数值
答案 0 :(得分:0)
用p.uid绑定它而不是p.lineup因为你正在使用ng-repeat =“p在玩家跟踪$ index”,这意味着你逐个获取数组中的对象。