Отображение данных JSON в раскрывающемся списке в AngularJS

мой файл document.json содержит такие данные, как

[
    {"name" :"B"},
    {"name" :"A"},
    {"name" :"D"},
    {"name" :"E"}
]

когда я пытаюсь отобразить данные json в раскрывающемся списке, последний элемент E отображается только в раскрывающемся списке .my html-файле, например

<select ng-model="selectedTestAccount" ng-options="c as c.name for c in testAccounts"></select>

и мой файл сценария, например

sampleApp.controller('DemoCtrl', function ($scope, $http) {
  $scope.selectedTestAccount = null;
  $scope.testAccounts = [];

  $http.get('document.json').success(function (data) {
    $scope.testAccounts = data;
  });
});

Как я могу отобразить эти данные document.json в раскрывающемся списке, по умолчанию выбранном в качестве первого элемента в AngularJS. Любые рекомендации, пожалуйста


person Shekkar    schedule 27.06.2014    source источник
comment
Я думаю, что ваши данные неверны. Поскольку у вас одинаковые имена каждого ключа, он перезаписывается другим. Итак, в последнем есть один ключ только со значением E.   -  person Mritunjay    schedule 27.06.2014
comment
Спасибо, только что я отредактировал структуру объекта JSON, но имя является общим для моего требования.   -  person Shekkar    schedule 27.06.2014
comment
Нет, я не говорю удалить поле имени. Но до этого у вас было 4 поля имени в одном объекте. что невозможно.   -  person Mritunjay    schedule 27.06.2014
comment
да, я отредактировал структуру JSON, спасибо   -  person Shekkar    schedule 27.06.2014
comment
Я думаю, что комментарии, которые помогли вам, кажутся важными для вашего вопроса. Вы должны проголосовать за них, тогда они появятся в начале поста и будут полезны другим зрителям. спасибо   -  person Mritunjay    schedule 28.06.2014
comment
вы исправили саму проблему. Вы не должны так поступать, потому что другие зрители не поймут, в чем проблема.   -  person Mritunjay    schedule 30.06.2014
comment
На самом деле я не проверял код и не выполнял код после редактирования структуры данных json, и я столкнулся с отображением по умолчанию первого элемента в раскрывающемся списке, после демонстрации @Jerrad я получил необходимые шаги для отображения данных, спасибо для ваших предложений.   -  person Shekkar    schedule 30.06.2014


Ответы (1)


Ваш JSON не совсем правильный. Вам нужно иметь фигурные скобки вокруг каждого элемента, например:

[ 
  { "name" :"B" }, 
  { "name" :"A" }, 
  { "name" :"D" }, 
  { "name" :"E" } 
]

Вы можете выбрать первый элемент в раскрывающемся списке по умолчанию следующим образом:

$scope.selectedTestAccount = $scope.testAccounts[0];

Демо

person Jerrad    schedule 27.06.2014
comment
Спасибо, только что я получил свою структуру объекта json, но ваш ответ не читает файл document.json, что важно для меня. Можете ли вы ответить на чтение файла document.json. - person Shekkar; 27.06.2014
comment
@Shekkar, я обновил демонстрацию в своем ответе, чтобы читать из файла document.json. - person Jerrad; 27.06.2014
comment
Спасибо, @Jerrad, я понял, где остановился, твоя демонстрация помогает мне во всем - person Shekkar; 27.06.2014