пункт коллекции не обновляется в knockout.js

0

У меня проблема с обновлением элементов в коллекции.

Когда моя форма имеет коллекцию, и одна и та же подача привязана к "входному ящику" и "интервалу", изменения поля ввода не распространяются на элемент span.

Моя форма выглядит так:

<tbody data-bind='foreach: gifts'>
    <tr>
        <td>
            <input class='required' data-bind='value: name, uniqueName: true' />
            <span data-bind='text: name' >&nbsp;</span>
        </td>
    </tr>
</tbody>

и вы можете попробовать его на jsFiddle

Теги:
knockout.js

1 ответ

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

name вашей модели и price должны быть наблюдаемыми.

Так что вместо твоего:

var viewModel = new GiftModel([
    { name: "Tall Hat", price: "39.95"},
    { name: "Long Cloak", price: "120.00"}
]);

Сделай это:

var viewModel = new GiftModel([
    new Item("Tall Hat", "39.95"),
    new Item("Long Cloak", "120.00") ]);

где Элементы:

var Item = function(pName, pPrice) {
    var self = this;
    self.name = ko.observable(pName);
    self.price = ko.observable(pPrice);
};

Вот рабочий пример: http://jsfiddle.net/D2agq/

  • 0
    Отлично, это работает! Спасибо

Ещё вопросы

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