我在我的视图模型中有对象的集合。将值绑定到select
控件时遇到问题。该值是一个JS对象而不是原始类型。当我在绑定集合中有多个对象并更改select
控件时,其他所有对象的值都会更新为新选定的对象。就好像所有的值都绑定在foreach
绑定中的同一个实例上。该错误似乎只在插入新行时发生,而不是简单地编辑现有行时。更改一个对象的可观察属性更改集合中的所有属性
我已经列出了很多复杂性,并有一个例子显示JSFiddle的问题。
http://jsfiddle.net/zero21xxx/5vgDy/
步骤,看看错误
- 选择定居类型从下拉列1
- 下来从新下拉到正确的选择“二”。
- 从第2行的下拉列表中选择结算类型
- 现在,行1和行2都将在选择框中设置为“One”。
我期望在一行中的更改不会影响任何其他行。
对于解决这个问题,你会在代码变更方面提出什么建议?我真的想要缓存'DatabaseField'信息,因为它最终会碰到服务器。 此外,为什么这种相同的效果不会发生在'availableTabs'上? “foreach”中的所有项都绑定到父项的选项卡列表,但可以在不影响表中的其他行的情况下更改它们。 – arb
可能是这样的:http://jsfiddle.net/rniemeyer/5vgDy/54/。只要检查这些选项是否已经在字段中填充,而不是每次都重新填充它们。 –