无法解析optionsText的绑定

时间:2013-02-27 17:24:26

标签: knockout.js

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

  

未捕获错误:无法解析绑定。   消息: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>

1 个答案:

答案 0 :(得分: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应该用于选择文本的属性时,才需要它。另见documentation

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

演示JSFiddle