1

observableArray 内の多数の個別の要素の値を保持するはずのテキスト ボックスが多数あります。テキスト ボックスの数は、ユーザーが前の画面で選択した「プロパティ」の数に依存し、プロパティは後で自由に追加および削除できます。現在、空の配列から始めて、テキストボックスの値バインディングを配列の新しいキーとして設定しようとしています:

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

Listing は、そのvar properties = ko.observableArray([])中で定義されたオブジェクトです。私の目標は、プロパティ配列を などのよう{"property1": "3", "property2": "4"}にすることです。ただし、現在、プロパティ配列は常に空のままです。

うまくいけば、それは何らかの意味を持ちます。

4

1 に答える 1

2

properties()[property_id]の代わりに使用properties[property_id]

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

の代わりにlisting.propertiesすべきだと思いますko.observableko.observableArray

JSFiddle DEMO

于 2013-10-24T20:37:13.033 に答える