我正在使用knockout.js options binding on select-list。我创建了一个小提琴示例:
http://jsbin.com/uzecaf/12/edit
但问题是,对象对象不是显示在ui上的值文本,而是显示在ui上。我做错什么了?
编辑
Js代码
function AuthorVM(){
this.Name = ko.observable("bla-bla");
this.books = ko.observableArray(
[
new BookVM('book-1', '1'),
new BookVM('book-2', '2'),
new BookVM('book-3', '3'),
new BookVM('book-4', '4')
]
);
}
function BookVM(name, id){
this.Name = name;
this.Id = id;
}
ko.applyBindings(new AuthorVM());MarkUp
<label data-bind="text: Name"></label>
<select data-bind="options: books, optionsText: Name">
</select>发布于 2012-10-28 09:31:37
您的select绑定是错误的,optionsText参数是一个string,因此需要将属性名称作为字符串传递到那里。
您的绑定应该类似于:
<select data-bind="options: books, optionsText: 'Name'">见演示。
https://stackoverflow.com/questions/13107522
复制相似问题