0

我不确定为什么会收到此错误:

未捕获的错误:无法解析绑定。消息:ReferenceError:数据未定义;绑定值:options: dateOptionsArray,optionsText: data,value: data knockout-2.2.1.debug.js:1936 ko.utils.extend.parseBindingsString

对于这个模型:

function ViewModel(jsonModel) {

    var self = this;
    self.dateOptionsArray = ["YYYY-MM-DD", "YYYY-MM-DD HH:MM"]; //todo make this dynamic

在这个 html 中:

 <select id="f" data-bind="options: dateOptionsArray,optionsText: data,value: data"></select>
4

1 回答 1

2

首先,您需要有一个data按顺序命名的属性来value绑定工作:

function ViewModel(jsonModel) {

    var self = this;
    self.dateOptionsArray = ["YYYY-MM-DD", "YYYY-MM-DD HH:MM"];
    self.data = ko.observable();

};

二是不需要optionsText。只有当数组中有复杂对象并且想要指定 KO 应该将哪个属性用于选择文本时,才需要它。另请参阅文档

<select id="f" data-bind="options: dateOptionsArray, value: data"></select>

演示JSFiddle

于 2013-02-27T17:35:51.870 回答