AngularJS Select Box

0

У меня проблема в поле выбора в angularjs

Я получаю свой список местоположений, используя это:

locationFactory.getLocation().then(function (data) {
        $scope.locationList = data.data.locationList;
    });

и результат таков: Результат

И вот как я могу добавить его в поле выбора:

<select ng-options="location.strBarangay for location in locationList"
                                        ng-model="details.location" id="crOrderLoc">
                                </select>

Моя проблема заключается в том, что всякий раз, когда я выбираю вариант, всегда есть пустой параметр, и он имеет значение первого объекта в моем json. Пример: у меня есть json-объекты [{1}, {2}, {3}]. И по моему варианту он устроит так:

  1. значение опции = 1 (он будет показывать пустой)
  2. значение опции = 2 (покажет 1)
  3. значение опции = 3 (покажет 2)

Я попробовал это, чтобы установить значение моей модели в select

$scope.details.location = {
        dblLocationPrice: $scope.locationList[0].dblLocationPrice,
        intLocationID: $scope.locationList[0].intLocationID,
        intLocationStatus: $scope.locationList[0].intLocationStatus,
        strBarangay: $scope.locationList[0].strBarangay,
        strCity: $scope.locationList[0].strCity
    };

Но есть ошибка: angular.min.js: 117 TypeError: Невозможно прочитать свойство "0" неопределенного в новом prodSalesCtrl

Но он работает здесь http://jsfiddle.net/MTfRD/3/ (отредактирован)

Но он не работает в моем выборе

Теги:

1 ответ

1
Лучший ответ

После загрузки данных необходимо установить значение по умолчанию для выбора:

locationFactory.getLocation().then(function (data) {
    $scope.locationList = data.data.locationList;
    if($scope.locationList && $scope.locationList.length>0)
        $scope.details.location = $scope.locationList[0];
});
  • 0
    Работает. большое Вам спасибо. Извините, я не могу дать вам + респ. Я все еще новичок здесь

Ещё вопросы

Сообщество Overcoder
Наверх
Меню