我修改了购物车Knockout示例(http://knockoutjs.com/examples/cartEditor.html)以通过Knockout-Kendo.js库使用KendoUI DropDownLists。
如此jsfiddle中所示,这不能按预期工作(第二个DropDownList未填充,并显示为标准输入)。 http://jsfiddle.net/L3F2Y/4/
在我的机器上运行时,会抛出以下javascript错误:
Microsoft JScript运行时错误:无法解析绑定。 消息:ReferenceError:'products'未定义; 绑定值:kendoDropDownList:{dataTextField:'name',data:products,value:$ parent.product}
我认为这是由于Knockout-Kendo自定义绑定处理集合的方式而发生的,但任何进一步尝试理解/解决此问题都是不成功的。
提前致谢!
答案 0 :(得分:1)
Kendo DropDownList未设置为本机跟踪所选对象。它希望用原语填充值。因此,最终只会在对象上执行.toString()
。
您需要分别跟踪类别的名称和产品的名称,并创建计算的observable以保留相关对象的副本。