Mein Problem ist wie folgt: Ich versuche eine Checkbox-Bindung zu verwenden, um ein Array von Objekten an eine Liste ausgewählter Objekte zu binden. Mein Problem ist, ich möchte das gesamte Objekt in die Liste binden, wie folgt:Knockout: Wie überprüfte Bindung mit beobachtbaren Array von ganzen Objekten zu verwenden, sondern einzelne Eigenschaften vergleichen?
<div data-bind="foreach: items">
<div>
<input type="checkbox" data-bind="checked: $parent.selectedItems, value: $data">
</div>
</div>
Wo Artikel ist die Liste der Objekte zu dem selectedItems beobachtbaren Array gebunden zu sein.
Um jedoch zu überprüfen, ob der Wert "aktiviert" ist, möchte ich einzelne Objekteigenschaften vergleichen. Der Grund dafür ist, dass ich Objekte aus verschiedenen Quellen sammle, und einige repräsentieren das gleiche Objekt, aber sie sind nicht völlig identisch. Außerdem muss ich bestimmte Untereigenschaften der ausgewählten Objekte in anderen Funktionen verwenden, daher muss das gesamte Objekt an das beobachtbare Array gebunden sein.
Vielen Dank im Voraus für Anregungen!
Obwohl die integrierte Bindung dies nicht zulässt, wie Jonathan in seiner Antwort gezeigt hat, können Sie dies mit einer benutzerdefinierten Bindung tun. Ein Startpunkt könnte hier sein: http://StackOverflow.com/A/15215412/1287183 –