我有以下数组:
$scope.variations = [
{'nom':'',
'preu':0,
'grams':''
},
{'nom':'',
'preu':0,
'grams':''
},
{'nom':'',
'preu':0,
'grams':''
}
];
我在前端展示它是这样的:
<div ng-repeat="vari in variations">
<input type="text" class="inputmodal" ng-model="varinom">
<input type="text" class="inputmodal" ng-model="varipreu">
<input type="text" class="inputmodal" ng-model="varigrams">
</div>
一旦我在数组的所有3个项目中填充了3个输入,我就会尝试将它们中的每一个推送到另一个数组中,如下所示:
<a ng-click="test()">TEST</a>
和JS:
$scope.test = function(){
$scope.singleorder = [];
for(var i = 0; i < $scope.variations.length; i++)
$scope.singleorder.push({
'nom': $scope.variations[i].varinom,
'grams': $scope.variations[i].varigrams,
'preu': $scope.variations[i].varipreu,
});
console.log($scope.singleorder);
};
在我在控制台中的结果中,我在控制台中有3个数组,但每个对象的值都是未定义的。
我错过了什么?
答案 0 :(得分:1)
您已正确设置ngModel
。使用参考变量vari
,如
<div ng-repeat="vari in variations">
<input type="text" class="inputmodal" ng-model="vari.nom">
<input type="text" class="inputmodal" ng-model="vari.preu">
<input type="text" class="inputmodal" ng-model="vari.grams">
</div>
并使用
$scope.singleorder.push({
'nom': $scope.variations[i].nom,
'grams': $scope.variations[i].grams,
'preu': $scope.variations[i].preu,
});