Handsontable과 KnockoutJS의 통합은 여기 http://jsfiddle.net/NHpEH입니다.Handsontable에서 셀 데이터로 계산 된 관찰 가능을 넣는 방법
ko.bindingHandlers.handsontable = {
init: function (element, valueAccessor, allBindingsAccessor) {
var value = valueAccessor(); // TODO: what happens if value is null?
var allBindings = allBindingsAccessor();
var colHeaders = allBindings.colHeaders() || true;
var data = allBindings.handsontable();
// TODO: make options customizable
$(element).handsontable({
data: data,
minRows: value().length || 5,
minCols: value()[0].length || 5,
minSpareCols: 0,
minSpareRows: 1,
colHeaders: colHeaders,
contextMenu: true,
onChange: function (data, source) {
var headers = $(element).handsontable("getColHeader")
var tableData = $(element).handsontable("getData");
value(tableData);
allBindings.colHeaders(headers);
}
});
$(element).handsontable("loadData", value());
},
update: function (element, valueAccessor, allBindingsAccessor) {
var value = valueAccessor();
var valueUnwrapped = ko.utils.unwrapObservable(value);
var allBindings = allBindingsAccessor();
var colHeaders = allBindings.colHeaders();
$(element).handsontable("updateSettings", {
minRows: value().length,
minCols: value()[0].length
});
}
};
그러나 계산 된 관측 값을 셀 데이터로 넣고 싶습니다. 예를 들어 셀에 두 개의 다른 셀의 합계를 표시하려고합니다.
어떤 아이디어라도 감사 할 것입니다. 여기
감사합니다. 나는 당신의 아이디어를 얻었고 그것을 여러 가지 방법으로 구현하려했지만 모든 노력은 실패했습니다. 물론 나는 Handsontable과 Knockout에서 새로운 사람입니다. jsfiddle에서 작동 예제를 제공 할 수 있습니까? – Mori
그래서 ... 왜 거기에 계산이 필요합니까? 무엇을 성취하려고합니까? – CodeThug
Fiddle 추가되었습니다. 이제 viewmodel을 병합하기 위해 ko 매핑 플러그인을 사용합니다. – CodeThug