Раскрывающийся список с несколькими вариантами выбора не работает с параметром ng - PullRequest
0 голосов
/ 30 мая 2018
<select class="selectpicker" name="productName" ng-model="productName"
        style="width:250px" ng-options="x.name for x in preSalesSpocData"
        ng-change="getVersionsForProduct()">
  <option value="" selected="selected">Please Select Option</option>
</select>

Здесь у меня есть объект JSON preSalesSpocData, и я пытаюсь заполнить раскрывающийся список, используя ng-options, но он не работает.Когда я использую обычный выбор, он работает нормально, но ng-options не работает с выпадающим списком множественного выбора.Пожалуйста, предоставьте решение для этого.

Вот пример данных JSON:

$rootScope.preSalesSpocData = [
  { Id: 1, Name: 'Apple' }, 
  { Id: 2, Name: 'Mango' }, 
  { Id: 3, Name: 'Orange' }
];

Ответы [ 4 ]

0 голосов
/ 30 мая 2018

Ваши параметры ng должны следовать синтаксису element.property for element in listOfElements.

Поэтому у вас должно быть ng-options="item.Name for item in preSalesSpocData"

РЕДАКТИРОВАТЬ : в ответ на комментарий это работаетпросто хорошо.См. Пример JSFiddle .

0 голосов
/ 30 мая 2018

попробуй: item as x.Name

<select class="selectpicker" name="productName" ng-model="productName"  style="width:250px"ng-options="item as x.Name for item in preSalesSpocData" ng-change="getVersionsForProduct()">
  <option value="" selected="selected">Please Select Option</option>
</select>
0 голосов
/ 30 мая 2018

Учитывая ваш код и описание, у вас есть рабочий пример.Вот демо:

var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope, $rootScope) {
  $rootScope.preSalesSpocData = [{
    Id: 1,
    Name: 'Apple'
  }, {
    Id: 2,
    Name: 'Mango'
  }, {
    Id: 3,
    Name: 'Orange'
  }];

  $scope.getVersionsForProduct = function() {
    console.log("getVersionsForProduct called");
  }
});




  
  {{productName | json}}

У вас может быть опечатка, или вы забыли ввести $rootScope и т. Д.

0 голосов
/ 30 мая 2018

пожалуйста, добавьте, как показано ниже, для нескольких моделей ng и отметьте

Пример

<select  ng-model="empInfo1" >
<select  ng-model="empInfo2" >
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...