Невозможно привязать observablecollection к View, используя Knockout

0

Моя модель просмотра:

function MyInfo(data) {
        this.line = ko.observable(data);

    }
function MyViewModel() {
            var self = this;
            self.Plines = ko.observableArray([]);

            $.getJSON("URL",
            function (allData) {
                 var mappedData = $.map(allData, function (item) { return new MyInfo(item) });
            self.Plines = mappedData;
            });
            alert(self.Plines);

        }

        ko.applyBindings(new MyViewModel());

И у View есть только Select.

<select data-bind="options: Plines,  optionsText: ''"></select>

Ответ JSON у меня есть:

["Item1","Item2","Item3","Item4","Item5"]
Теги:
wcf
knockout.js

1 ответ

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

изменить self.Plines = allData; к self.Plines(allData);

Кроме того, измените:

<select data-bind="options: Plines,  optionsText: ''"></select>

в

<select data-bind="options: Plines,  optionsText: 'line'"></select>

здесь рабочий пример

  • 0
    Пробовал, что даже тогда он показывает Callback в оповещении, а не фактические данные
  • 0
    @Simsons, я пропустил, что optionText тоже не был установлен.
Показать ещё 1 комментарий

Ещё вопросы

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