У меня есть это простое приложение knockout.js:
View:
<select data-bind="options: allDocumentTypes , optionsCaption: 'Choose ...', optionsValue: 'id', optionsText: 'name', selectedOptions: selectedDocument"></select>
<span data-bind="click: cl">CLEAR VALUE!</span>
и эта простая ViewModel:
function documentType(id, name){
this.id = id;
this.name = name;
}
var viewModel = {
allDocumentTypes: ko.observableArray([]),
selectedDocument: ko.observable(''),
cl: function(){
viewModel.selectedDocument('');
}
};
/* load data */
viewModel.allDocumentTypes.push(new documentType(1,'Test 1'));
viewModel.allDocumentTypes.push(new documentType(2,'Test 2'));
ko.applyBindings(viewModel);
Я ожидаю, что после того, как янажмите на промежуток «CLEAR VALUE!», в select будет выбран вариант «выбрать ...», но этого не происходит.Значение в viewModel установлено в «» (пустая строка), что является правильным, но пользователь все еще видит старое значение в select.
Есть ли способ сделать это?
Спасибо за помощь:)