2016-02-18 3 views
0

После инициализацииКак добавить проп/значение динамически кендо столбцы

<div kendo-grid="grid" k-options="vm.gridOptions" k-columns="vm.columns" ng-show="vm.filtered"></div> 

JS:

vm.columns = [ 
    { 
    field: 'client', 
    title: 'Client', 
    attributes: { 'class': 'k-gridRow' } 
    }, 
    { 
    field: 'total', 
    title: 'Total', 
    attributes: { 'class': 'text-right' }, 
    format: '{0:n0}', 
    width: 110 
............ 

мне нужно добавить/изменения в колонке общего FooterTemplate с новыми значениями после некоторых событий на странице

Я пробовал vm.columns[3]['footerTemplate'] = '2333';, но он не работает. Помогите пожалуйста, возможно, заново закрепите эту колонку, по крайней мере, этот плохой вариант, хотя

ответ

0

Вам необходимо использовать способ setOptions() для изменения любых параметров виджетов после инициализации. Попробуйте это:

var grid = $("#grid").data("kendoGrid"); 
var columns = grid.getOptions().columns; // Get the columns from getOptions() 

// Change whatever you like 
columns[1].footerTemplate = "Min: (#: min #) - Max: (#: max #)"; 

// Set only columns options again 
grid.setOptions({ 
    columns: columns 
}); 

Demo

+0

в vm.gridOptions.dataSource.data() содержатся элементы, после grid.setOptions ({их disappire –

+0

@YuriySadovoy хорошо, то попробуйте добавить объект целых вариантов снова вместо столбцов .. что-то вроде: 'var options = grid.getOptions(); options.columns [1] .footerTemplate =" Min: (#: min #) - Max: (#: max #) "; grid.setOptions (options) '; – DontVoteMeDown

+0

странно, coz vm.gridOptions.dataSource имеет все данные, но сетка их скрывает –

Смежные вопросы