Knockout-Kendo级联下拉列表

时间:2012-08-29 01:26:58

标签: knockout.js kendo-ui

我修改了购物车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自定义绑定处理集合的方式而发生的,但任何进一步尝试理解/解决此问题都是不成功的。

提前致谢!

1 个答案:

答案 0 :(得分:1)

Kendo DropDownList未设置为本机跟踪所选对象。它希望用原语填充值。因此,最终只会在对象上执行.toString()

您需要分别跟踪类别的名称和产品的名称,并创建计算的observable以保留相关对象的副本。

以下是一个示例:http://jsfiddle.net/rniemeyer/e3cTT/