Как установить заголовок столбца динамически в сетке Wijmo?
У меня есть сетка Wijmo, которая устанавливает заголовок столбца так же, как ключ данных. Я хотел бы установить заголовок столбца отличается от того, как выглядит ключ данных. Но мои данные возвращают разное количество столбцов. Я попытался с помощью следующего подхода, но он не работает.
JS
var columnList = ['a','b','c','d'];
setColumnHeaders(columnList);// this a call from a different VM
self.setColumnHeaders = function (columnList) {
$.each(columnList, function (index) {
self.columnsHeader.push(columnList[index]);
});
ko.applyBindings(viewModel, $(".container")[0]);
HTML
<table id="grid" data-bind="wijgrid: {
data: data ,
columnsAutogenerationMode: false,
columns: [{headerText: columnsHeader}],
"></table>
2 ответа
Таким образом, заголовки столбцов не существуют как независимая коллекция и не поддерживают двухстороннее связывание, поэтому вы не можете установить их динамически при инициализации сетки. Единственный возможный обходной путь - создать полную коллекцию столбцов вручную, включая свойство dataKey, видимое свойство и т. Д., А затем установить для этой коллекции свойство столбцов вместо свойства headerText.
Вы можете установить динамический заголовок столбца следующим образом:
grid.columns [1].header = 'header-name';