Я пытаюсь связать выбранное значение выпадающего списка с помощью нокаута. HTML является:Связывание выбранного элемента в выпадающем меню с использованием нокаута
<div>
Dummy
<select id="dummy" data-bind="options: DummyOptions, optionsCaption : 'Select..', optionsText: 'Message', value: selectedValue"></select>
</div>
<button data-bind="click : setDefault">click me </button>
<div data-bind="visible: selectedValue"> <!-- Appears when you select something -->
You have chosen a country with population
<span data-bind="text: selectedValue() ? selectedValue().Message : 'unknown'"></span>.
Javascript является:
var dummyOptions = ko.observableArray([{ isSelected: false, Message: "Test1" }, { isSelected: false, Message: "Test2"},{ isSelected: true, Message: "Test3"}]);
var defaultOption = ko.observable();
var vm = {
DummyOptions : dummyOptions,
selectedValue : defaultOption,
setDefault : function(){
defaultOption = ko.observable(ko.utils.arrayFirst(dummyOptions(), function(item) {
return item.isSelected;
}));
}
};
ko.applyBindings(vm);
Если я пытаюсь этот кусок JS кода без функции SetDefault и установив переменную defaultOption непосредственно, все работает отлично. Но, если я делаю это так, как я перечислил код, привязка не работает.
Ссылка на скрипку: http://jsfiddle.net/tNZ8f/
Любые предложения ??
Спасибо за указание, что из! – user3120027
Просто еще одно уточнение ... Немного несвязано ... Как установить атрибут title для каждого отдельного объекта
С привязкой 'attr'. Но вы не можете сделать это с привязкой 'select'. Чтобы настроить теги '