このトピックが何度か取り上げられていることは知っていますが、ここで少し問題があります。私は次のように考えています。
<!-- ko foreach: documents -->
<div>
<input type="checkbox" data-bind="checked: $parent.checkItem(documentId)" />
</div>
<!-- /ko -->
私のviewModelでは:
var checkItem = function (checkedItem) {
debugger;
window.selectedDocuments.push(checkedItem);
};
別のリソースがこの配列にアクセスする必要があるため、ウィンドウを使用しています。
現在、ページをロードすると、ドキュメントごとに checkItem が 1 回ヒットしますが、これはすべきではないと思います。どのドキュメントが選択されているかを監視し、配列を更新したままにしています (この場合は selectedDocuments)。
これが私の試みのフィドルです:
どうすればこれを機能させることができますか?