我有一個第三方自定義jquery組件覆蓋了一個複選框,並提供了一個漂亮的「切換」外觀。該組件具有每當用戶單擊該組件時都會發生的函數回調。KnockoutJS - 如何更新一般的觀察值
如何使用事件目標設置可觀察值,而無需特別瞭解視圖模型中哪些屬性正在調用事件。
例如:
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.
}
});
});
任何幫助,將不勝感激。獲得可觀察到的
嘿,歡迎來到SO。我剛剛開始與knockout自己合作,所以我不太確定,但是您可以使用計算的observable(如果需要從複選框中拉取值並運行任何檢查),然後讓它訂閱複選框(S)。只是一個想法。 – War10ck