与えられたオブジェクト
var viewModel = {
Opts: ko.observableArray([
{ d: 'a', v: 0, selected: 1},
{ d: 'b', v: 1, selected: 1},
{ d: 'c', v: 2, selected: 1},
{ d: 'd', v: 3, selected: 2},
{ d: 'e', v: 4, selected: 1},
{ d: 'f', v: 5, selected: 1}
]),
selectedOpts: ko.observableArray([])
};
複数選択リストをバインドして、「選択された」プロパティの値を変更したいと考えています。1 は false、2 は true です。(サーバー上での表示方法 - 実際にはステータス コードです)
<select data-bind="options: Opts,
optionsText: 'd',
optionsValue: 'v',
selectedOptions: selectedOpts,
optionsCaption: 'Choose...'" multiple=""></select>
selectedOptions バインディングを選択されたプロパティにバインドできれば、selectedOpts オブジェクトは必要ないことはわかっています。値のリストを表示するために selectedOpts への手動サブスクリプションを設定せずに手動でこれを行う方法がわかりません。選択された各項目に選択されたプロパティを設定します。
簡単な方法があると確信しています。
ありがとう