Функция группировки jqGrid исчезает при запуске addRowData - PullRequest
0 голосов
/ 26 октября 2011

На сайте jqGrid приведен следующий пример кода о том, как использовать функцию группировки, она работает очень хорошо.


    $(document).ready(function(){
    var mydata = [
                {id:"1",invdate:"2010-05-24",name:"test",note:"note",tax:"10.00",total:"2111.00"} ,
                {id:"2",invdate:"2010-05-25",name:"test2",note:"note2",tax:"20.00",total:"320.00"},
    ....
            ];
          $("#list48").jqGrid({
            data: mydata,
            datatype: "local",
            height: 'auto',
            rowNum: 30,
            rowList: [10,20,30],
                colNames:['Inv No','Date', 'Client', 'Amount','Tax','Total','Notes'],
                colModel:[
                    {name:'id',index:'id', width:60, sorttype:"int"},
                    {name:'invdate',index:'invdate', width:90, sorttype:"date", formatter:"date"},
                    {name:'name',index:'name', width:100, editable:true},
                    {name:'amount',index:'amount', width:80, align:"right",sorttype:"float", formatter:"number", editable:true},
                    {name:'tax',index:'tax', width:80, align:"right",sorttype:"float", editable:true},      
                    {name:'total',index:'total', width:80,align:"right",sorttype:"float"},      
                    {name:'note',index:'note', width:150, sortable:false}       
                ],
                pager: "#plist48",
                viewrecords: true,
                sortname: 'name',
                grouping:true,
                groupingView : {
                    groupField : ['name'],
                    groupDataSorted:false, 
                    groupColumnShow:[true]
                },
                caption: "Grouping Array Data"
          });


Но если я уберу:

data: mydata,

И составьте сетку, используя addRowData:

$('#list48').addRowData("id", mydata);

Группировка исчезла, кто-нибудь сталкивался с подобной проблемой? Не могли бы вы помочь?

Спасибо!

Ответы [ 3 ]

1 голос
/ 08 ноября 2011

Попробуйте вызвать sortGrid после addRowData. Это сработало для меня. Синтаксис для sortGrid: http://www.trirand.com/jqgridwiki/doku.php?id=wiki:methods

var sortByColumnKey = 'StartDate';
$('#grid').jqGrid('sortGrid', sortByColumnKey, true);
0 голосов
/ 26 декабря 2017

Группировка не выполняется после добавления строк на $('#list48').addRowData("id", mydata);

Вам следует сгруппировать новые данные, добавленные в сетку. Попробуйте это после добавления строк в сетку.

$('#list48').jqGrid('groupingGroupBy', 'name', {
                groupDataSorted:false, 
                groupColumnShow:[true]
});
0 голосов
/ 30 января 2013

У меня тоже была такая же проблема.Просто запуск 'reloadGrid' решил это за меня.$ ( '# Сетка') триггер ( 'reloadGrid');.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...