KnockOut.JS optionsText

时间:2014-09-19 17:48:59

标签: javascript knockout.js

我有这段代码:

self.Groups = ko.observableArray();
function LoginNameObject(name) {
    this.loginName = name;
}

self.Groups.push(new LoginNameObject('Blah'));

我试图像这样绑定html:

 <select data-bind="options: Groups, optionsText: loginName"></select>

但是在尝试绑定时继续使用loginName是未定义的。任何帮助将不胜感激!

由于

1 个答案:

答案 0 :(得分:2)

optionsText中,您需要指定您的媒体资源名称字符串

所以你需要写

<select data-bind="options: Groups, optionsText: 'loginName'"></select>

另见文档:Example 3: Drop-down list representing arbitrary JavaScript objects, not just strings

或者,如果您需要更复杂的逻辑来计算选项文本,您还可以将optiosText指定为函数:

<select 
   data-bind="options: Groups, optionsText: function(item) { return item.loginName }">
</select>