2015-12-24 4 views
1

Этот вопросом является продолжением this..Изменение значений в наблюдаемых массивах в нокауте

У меня есть наблюдаемый массив следующим образом:

var myObservableArray = ko.observableArray([ 
    { name: "Bungle", type: "Unknown" }, 
    { name: "George", type: "Unknown" }, 
    { name: "Zippy", type: "Unknown" } 
]); 

пополняет отборное окно списка, используя следующий код:

<select data-bind="options: myObservableArray, 
        optionsText: function(item) { 
         return item.name + '-' + item.type; 
        },optionsValue:'name', 
        value: selected"></select> 

мне нужен метод, который может изменить тип выбранного значения для «mytype» например .. если Bungle выбрано ... { name: "Bungle", type: "mytype" }

Любая помощь ищется искренне признательна.

+0

Вы можете проверить мой ответ на первоначальный вопрос: http://stackoverflow.com/questions/34453587/converting-the-form -of-ан-наблюдаемый-массив и отображение-в-список выборки – TSV

ответ

0

Вы можете проверить это jsfiddle, иллюстрируя изменение выбранного типа объекта с помощью ввода текста.

Вид модели:

var viewModel = { 
    myObservableArray: myObservableArray, 
    selected: ko.observable() 
}; 

И наценка:

<!-- ko if: selected --> 
<div>Type:</div> 
<input data-bind="value: selected().type"/> 
<!-- /ko -->