Это мой первый вопрос, поэтому, пожалуйста, будьте осторожны! Я надеюсь, что вы можете помочь.Bind ng-options для вложенного массива в объекте JSON, внутри ng-repeat
Я пытаюсь определить окно выбора (раскрывающегося списка) в моем представлении HTML, используя ng-repeat, чтобы я мог создать выбор для каждого элемента в массиве. Я успешно достиг этого, но мои проблемы возникают, когда я пытаюсь получить нужные мне параметры в каждом из них.
Массива Я использую { "field1": 1, "field2": "Value01", "field3": "Value02", "refFields": [ { "fieldId": 100, "fieldValue": "fieldValueA" }, { "fieldId": 101, "fieldValue": "fieldValueB" } ] }, etc...
мне нужно выбрать за единицу в «верхнем уровне» массив, и в каждом окне выбора значение, которые должны появиться должно быть в fieldValue от refFields вложенного массива.
Мой текущий (сломанный) код продукта некоторые довольно мусорные результаты. Вот код:
<div ng-repeat="fk in fks">
<ng-form name="fksForm">
<select name="fkselect" ng-model="fk" ng-options="item as item.refFields for item in fks">
</select>
</ng-form>
</div>
Может кто-нибудь дать мне некоторое представление ли это возможно? Я не думаю, что сглаживание данных является вариантом для этого конкретного приложения. Я пробовал несколько разных вещей, включая передачу индекса в ng-options, что, как вы могли бы ожидать, вызвало некоторые довольно уродливые результаты. Я также пробовал это, что не дает мне полезного результата.
ng-options="item as item.refFields.fieldValue for item in fks"
Вот мой JSFiddle: ng-option nested JSON Array within ng-repeat
Большое спасибо заранее за любые предложения!
Непонятно из вашего примера, как значения в retFields соответствуют приведенным выше значениям, но я бы предложил некоторую предварительную обработку данных в вашем контроллере в более стандартный формат, а затем он должен быть прямым. – Scott