我正在使用 knockout-kendo.js 库开发一个 Web 应用程序。我的问题是,在我将 kendoComboBox 绑定到 observableArray 数据源之后。组合框不反映对 observableArray 所做的更改。
这是我绑定的组合框:
<input data-bind="kendoComboBox: { dataTextField: 'name', dataValueField: 'id', data: choices, value: selectedChoice, template: '<span>Name: #: data.name # </span>' }" />
这是我的视图模型:
var ViewModel = function() {
this.choices = ko.observableArray([
{ id: "1", name: "apple"},
{ id: "2", name: "orange"},
{ id: "3", name: "banana"}
]);
this.AddChoice = function () {
choices().push(new { id: "4", name: "frank" });
}
this.selectedChoice = ko.observable();};
ko.applyBindings(new ViewModel());
请参阅以下 jsfiddle:
http://jsfiddle.net/austinpantall/chNW8/
请注意当单击按钮将项目添加到数据源 observableArray 时会发生什么。组合框不会将新项目显示为选项。
我对敲击剑道相当陌生,正在寻找一种解决方法/替代方法来让新项目出现在组合框中。
在此先感谢,奥斯汀