将textarea的值绑定设置为observableArray的元素

时间:2013-10-24 20:22:34

标签: javascript knockout.js

我有一堆文本框应该保存observableArray中许多单独元素的值。文本框的数量取决于用户在早期屏幕上选择的“属性”数量,并且可以稍后添加和删除属性。目前,我从一个空数组开始,并尝试将文本框的值绑定设置为数组中的新键:

<input type="text" class="tdEdit" data-bind="value: listing.properties[property_id]"/>

列表是一个定义了var properties = ko.observableArray([])的对象。我的目标是让属性数组看起来像{"property1": "3", "property2": "4"}等。但是,目前,属性数组始终保持为空。

希望这有点道理。

1 个答案:

答案 0 :(得分:2)

使用properties()[property_id]代替properties[property_id]

data-bind="value: listing.properties()[property_id]"  

我认为listing.properties应该是ko.observable而不是ko.observableArray

JSFiddle DEMO