我的视图模型中有一个字符串列表.要编辑它们,我希望每个都显示为<li>带有文本框,以及<button>删除项目.所以,对于列表['A', 'B'],我想要这样的东西:
<ul data-bind="foreach: titles">
<li>
<input value="A" data-bind="value:$data" />
<button data-bind="click: $root.remove">remove</button>
</li>
<li>
<input value="B" data-bind="value:$data" />
<button data-bind="click: $root.remove">remove</button>
</li>
</ul>
<button data-bind="click: add">add</button>
Run Code Online (Sandbox Code Playgroud)
我最初可以创建它,但是没有得到值的更新以反映在视图模型中,并且无法使删除按钮工作.
我最初有一个observableArray简单的字符串,然后更新到observableArray的observable字符串.使用纯字符串,删除按钮有效,但可以预见,它不会更新视图模型.
我设置了一个相当孤立的JS小提琴:http://jsfiddle.net/bdukes/uvyH3/2/
如果有一种既定或更好的方法,我很想知道.
此外,作为一个不相关(并且不太重要)的问题,该stringifyJson实用程序似乎总是给出数组中每个项目的空结果.
Knockout目前不适用于一系列纯可观察数据(此处记录的问题).
为了使其正常工作,您需要将项目作为包含可观察对象的对象,例如:
{ val: ko.observable("something") }
Run Code Online (Sandbox Code Playgroud)
这是你的小提琴更新使用这些类型的对象:http://jsfiddle.net/rniemeyer/GgFa9/
| 归档时间: |
|
| 查看次数: |
1835 次 |
| 最近记录: |