jqGrid и динамическая группировка - PullRequest
2 голосов
/ 08 апреля 2011

Я работаю над динамической группировкой моего jqGrid в соответствии с примером, размещенным по адресу: http://www.trirand.com/blog/jqgrid/jqgrid.html (см. Последний раздел дерева nav: «Группировка: динамически изменять группировку».

Я могу сделать свою сетку динамически изменяющей группировку, если у сетки изначально есть столбец группировки. Однако это не желаемое поведение. Изначально сетка должна быть разгруппирована и позволяет пользователю группировать элементы, если они захотят.

Код следует:

function onGroupByChanged(){
    var vl = $('#lstGroupBy').val();
    if(vl) {
        if(vl == "clear") {
            $("#refData").jqGrid('groupingRemove',true);
        } else {
            $("#refData").jqGrid('groupingGroupBy', vl);
            $("#refData").jqGrid('setGridParam', { grouping:true });
            $('#refData').trigger('reloadGrid');
        }
    }   
}

Когда я устанавливаю для groupingGroupBy имя столбца (содержится в 'vl'), я получаю эту ошибку в FireBug: невозможно преобразовать ноль в объект в jQuery min 1.4.2

Я даже поменял порядок своих вызовов для groupingGroupBy и установил для группировки значение true.

У кого-нибудь есть идея? Я застрял и потратил на это около двух часов.

Спасибо, Randall

Ответы [ 2 ]

3 голосов
/ 30 июля 2011
var GroupOption = new Object();
var groupField = [];

groupField.push(vl);

GroupOption.groupField = groupField;
GroupOption.groupColumnShow = true;
GroupOption.groupCollapse = false;
GroupOption.groupText = ['<strong> {0} - {1} Item(s)</strong>']

$("#refData").setGridParam({groupingView : GroupOption});
$("#refData").setGridParam({grouping : true});
$("#refData").trigger('reloadGrid');      
0 голосов
/ 08 апреля 2011

Игнорирование.

При первоначальной инициализации моей сетки задайте полные параметры для параметра groupingView, а при настройке группировки: false сделали свое дело.

...
    grouping: grouping,
       groupingView : {
          groupField : [groupColParam],
          groupColumnShow : [true],
          groupText : ['<b>{0}</b>'],
          groupCollapse : true,
          groupOrder: ['asc'],
          groupSummary : [false]
       },
...
...