我已经用我的代码制作了一个jsfiddle http://jsfiddle.net/dorraba/HuDPJ/ 我想创建一个简单的购物车,我可以添加和删除项目。 我的意图是产品将成为一个对象(名称和价格) 购物车将保存一个项目列表,其中每个项目都是根据产品和数量构建的。
我的问题是我无法找到一种方法来设置文本框价格按每行下拉列表中选择的产品。
任何帮助都会很棒。 感谢。
答案 0 :(得分:2)
你应该对输入元素使用值绑定,否则你会得到一个DOM错误。
此外,您已将选项绑定的optionsValue
属性设置为'Name'
,这将导致knockout将ShoppingCartItem.Product
的值设置为产品名称。
如果父项(在本例中为Product.Price
)求值为undefined,则绑定到Price
等嵌套属性将导致错误。
因此,您需要测试Product是否已定义......如下所示:data-bind="value: (Product() ? Product().Price : '')"
以下是您的jsfiddle的工作解决方案:http://jsfiddle.net/HuDPJ/1/