我的 asp.net 应用程序(非 MVC)中有一个页面,其中有一些控件 - 下拉列表和文本框(非服务器端)以及设置了某些属性的 json 数组。每个元素可以有不同的属性集,但控件是根据这些属性呈现的,如果用户进行任何更改,则 json 实体也应相应修改。
这里的挑战是使用相同的控件集,但每次用户单击实体时绑定(bind)不同的实体。
问题 - 在 Knockout js 中这怎么可能?
如果不是knockout js,解决这个问题的最佳方案是什么?
最佳答案
knockout 可能非常适合解决这个问题。 observableArray 可以打包一组对象,每个对象代表一组控件的模型,然后该模型可以包含每个值的 observable。可以轮询模型的数组和单个值以了解更改。
在不知道你要找什么的情况下,我做了这个 basic fiddle这说明了如何将其全部呈现为 HTML。 knockout docs has more on working JSON ,但是只要在 observable 上使用 subscribe
方法,只要 observable 发生变化,将其保存到 JSON 对象会很简单。
然后还有 mapping plugin用于方便地将 JSON 对象从后端映射到 knockout 中的一组可观察值。
希望能回答您的问题!
关于javascript - 将相同的控件与数组绑定(bind)并跟踪更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22207838/