我正在努力与knockout.js绑定的选项。 当我不使用的选项结合,这样敲除选项绑定,不显示选项
<select id="AddProductSelect" name="chosenSpaProduct">
<!-- ko foreach: Spa.SpaProductList -->
<option data-bind="text: Name" ></option>
<!-- /ko -->
</select>
它工作正常。在下面的行我试图使用这样的选项绑定
<select data-bind="options: Spa.SpaProductList, optionsText: 'Name'"></select>
什么都没有显示在select元素中。
Spa.SpaProductList是一个对象数组。关于我在做什么的任何想法都是错误的?
编辑: 相关JS:
$(document).ready(function() {
var initialData = @Html.Raw(Json.Encode(Model));
viewModel = new ViewModel(initialData);
ko.applyBindings(viewModel);
viewModel.ViewLoaded(true);
function ViewModel(initialData) {
var self = this;
ko.mapping.fromJS(initialData, {}, self);
(...)
}
}
您可以发布您的JavaScript相关?模型,模型初始化和applyBindings()代码。 – 2013-05-04 03:34:18
因为根据你提供的代码,这应该在这个jsfiddle中演示。 http://jsfiddle.net/vYdVS/这让我想到它与你参考'Spa.'有关。 – 2013-05-04 03:36:45
@FeistyMango添加了你要求的js。我认为你对spa的参考是正确的,但并不真正知道如何调试。任何提示和技巧?我试着用$ root.Spa ...来确保Im在ViewModel的根目录下,但它没有帮助。 – 2013-05-04 09:47:07