【发布时间】:2011-12-29 13:10:40
【问题描述】:
我有这个简单的 knockout.js 应用程序:
查看:
<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!”后,在选择中将选择选项“选择...”,但它没有发生。 viewModel 中的值设置为“”(空字符串),这是正确的,但用户仍然在 select 中看到旧值。
有没有办法做到这一点?
感谢您的帮助:)
【问题讨论】:
标签: javascript mvvm knockout.js