Я пытаюсь создать многомерный массив в угловых JS и вставлять в него объекты.
Ниже приведен фрагмент кода -
$scope.dm.Questionnaires.Q_options=[][][];
for(var i in data)
{
if(data[i].dbObject.fieldname=="Q0001") {
$scope.dm.Questionnaires.Q_options[1][1].push(data[i].dbObject);
}
else if(data[i].dbObject.fieldname=="Q0002") {
$scope.dm.Questionnaires.Q_options[2][1].push(data[i].dbObject);
}
}
Пытаясь получить доступ к массиву в html, как показано ниже,
<select class="input-md form-control" ng-model="dm.Questionnaires.Q1000101" ng-options="item.antHillValue for item in dm.Questionnaires.Q_options[1][1] track by item.webServiceValue">
<option value="">select</option>
</select>
Я не могу заставить это работать. Любая помощь приветствуется.
Используйте что-то вроде этого.
$scope.dm = {};
$scope.dm.Questionnaires = {};
$scope.dm.Questionnaires.Q_options = [[[]]];
$scope.dm.Questionnaires.Q_options[0][0].push(1);
......
Вы должны проверить, существует ли массив в любом индексе или нет.
if ($scope.dm.Questionnaires.Q_options[index] == null ) {
$scope.dm.Questionnaires.Q_options[index] = [];
}