将相同的控件与数组绑定并跟踪更改

时间:2014-03-05 19:53:48

标签: javascript jquery angularjs knockout.js

我的asp.net应用程序(非MVC)中有一个页面,其中有一些控件 - 下拉列表和文本框(非服务器端)和一个设置了某些属性的json数组。每个元素可以具有不同的属性集,但是控件是基于这些属性呈现的,并且如果用户进行任何更改,则还应该相应地修改json实体。

这里的挑战是使用相同的控件集,但每次用户点击实体时绑定不同的实体。

问题 - Knockout js怎么可能?

如果没有淘汰js,这个问题的最佳解决方案是什么?

1 个答案:

答案 0 :(得分:0)

淘汰赛可能非常适合处理这个问题。 observableArray可以打包一组对象,每个对象代表一组控件的模型,然后该模型可以为每个值包含observable。可以轮询模型的数组和单个值以进行更改。

在不知道你正在寻找什么的情况下,我做了这个basic fiddle,说明了如何将它全部呈现给HTML。 knockout docs has more on working JSON,但只要在observable上使用subscribe方法进行可观察的更改,就可以将它保存到JSON对象。

然后还有mapping plugin用于方便地将JSON对象从后端映射到knockout中的一组observable。

希望能回答你的问题!