チェックボックスをオーバーライドし、よりきれいな「トグル」の外観を提供するサードパーティのカスタム jquery コンポーネントがあります。コンポーネントには、ユーザーがコンポーネントをクリックするたびに発生する関数コールバックがあります。
イベントが呼び出されているビュー モデルのプロパティを具体的に知らなくても、イベント ターゲットを使用して観察可能な値を設定するにはどうすればよいですか。
例えば:
HTML は次のとおりです。
<input type="checkbox" id="cb123" data-bind="checked: IsDeleted" />
<input type="checkbox" id="cb345" data-bind="checked: IsValid" />
Javascript コールバックは次のようなものです。
$(document).ready(function() {
.... Code snipped ....
var viewModel = ko.mapping.fromJS(myModel);
ko.applyBindings(viewModel);
$(':checkbox').toggleCheckbox({
onChange: function($el, value, e) {
var ctx = ko.contextFor(e.target); // Gets me the knockout context object.
// How do I set the appropriate observable value from here?
// In this case either one of the checkboxes could have been triggered.
}
});
});
どんな助けでも大歓迎です。