ошибка при заполнении выпадающего из объекта JSON

0

Я пытаюсь заполнить кнопку вниз в angularjs. Я получаю следующую ошибку. "Unexpected end of expression: data.WotcSummary "| Что я делаю не так.

Файл js:

WotcDashBoardModule.controller('WotcDashBoardController', ['$scope', 'WotcDashBoardModuleService', function ($scope, WotcDashBoardModuleService) {

     var Ein = '95-000000'; 
    WotcDashBoardModuleService.GetDashBoardSummary(Ein).then(function (response) {
        $scope.Summary = response.data.WotcSummary;
        //console.log($scope.Summary.Locations);
    });

}]);

Расположение - это массив с двумя элементами

[Object, Object, Object]
0:Object
corporateId:1600
location:"California"
__proto__:Object
1:Object
corporateId:1600
location:"Atlanta"
__proto__:Object
2:Object
corporateId:1600

Расположение: "Бостон"

HTML:

<div class="btn-group btn-toolbar btn-margin-left" style="float: right;" >
                    <button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                        ALL LOCATIONS
                        <span class="caret"></span>
                    </button>
                    <div class="dropdown-menu">
                        <select name="ListLocations" class="form-control input-md"                                                              
                                ng-model="Locations" 
                                ng-options="Locations.location for Locations in data.WotcSummary | track by Locations.location">
                            <option value=""> </option>
                        </select>                          
                    </div>
                </div>

Класс Business Object, возвращаемый в представление:

public class CompanyWotcBO
    {
        public int Id { get; set; }
        public int IdUser { get; set; }
        public int IdCandidate { get; set; }
        public int DocsSubmitted { get; set; }
        public int DocsRecieved { get; set; }       
        public string CompanyId { get; set; }
        public string EIN { get; set; }
        public string Error { get; set; }

        public List<Location> Locations { get; set; }      

        public CompanyWotcBO()
            {
            Locations = new List<Location>();
            }

    }

    public class Location
    {
        public int corporateId { get; set; }
        public string location { get; set; }
    }

Вот полный объект json, который возвращается:

Object {Id: 0, IdUser: 0, IdCandidate: 0, NewEmployees: 458, WotcScreened: 458…}
CompanyId:null
DocsRecieved:0
DocsSubmitted:0
EIN:null
Error:null
Id:0
IdCandidate:0
IdUser:0
Locations:Array[3]
0:Object
corporateId:1600
location:"95-3874566"
__proto__:Object
1:Object
corporateId:1600
location:"Atlanta"
__proto__:Object
2:Object
corporateId:1600
location:"Boston"
__proto__:Object
3:Object
corporateId:1600
location:"Chicago"
__proto__:Object
  • 0
    Вы можете разместить объект здесь, пожалуйста?
  • 0
    разместил объект. это тот, который вы ожидали.
Показать ещё 2 комментария
Теги:

2 ответа

2

Вам не нужно '|' в ng-вариантах

 <select name="ListLocations" class="form-control input-md"                                                              
                                ng-model="Locations" 
                                ng-options="Locations.location for Locations in data.WotcSummary track by Locations.location">
                        <option value=""> </option>
  • 0
    Спасибо. Я не вижу ошибки, но раскрывающийся список не заполняется.
  • 0
    опубликуйте свои данные в вопросе
Показать ещё 4 комментария
1

Измените свой HTML:

<select name="ListLocations" class="form-control input-md"                                                              
                                ng-model="Locations" 
                                ng-options="Locations as Locations.location for Locations in data.WotcSummary track by Locations.location">
                        <option value=""> </option>

Это должно работать

  • 0
    Я получаю следующую ошибку: Ожидаемое выражение в виде ' select (как метка )? for ( key ,)? _ value_ in collection ', но получил' Locations as Locations.location '. Элемент: {1}
  • 0
    Это может быть связано с тем, что значение ng-model и имя переменной ng-options одинаковы. попробуйте сделать это ng-options = "Location as Location.location для Location в data.WotcSummary track by Location.location">
Показать ещё 3 комментария

Ещё вопросы

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