tags:

views:

609

answers:

1

I'm trying to use jqGrid with local data and I'm finding a couple of issues:

I'm initializing the thing like so:

function refreshGrid($grid, results)
{
    $grid.jqGrid({
  data: results,
        datatype: "local",
        colNames:['#','File', 'Category', 'Line Number', 'Message Text','Detailed'],
        colModel:[
            {name:'count',index:'count', width:100, resizable: true},
            {name:'basename',index:'basename', width:100, resizable: true, classes:['basename']},
            {name:'category',index:'category', width:60, resizable: true},
            {name:'linenumber',index:'linenumber', width:60, resizable: true},
            {name:'text',index:'text',width:400, resizable: true},
            {name:'detailed',index:'detailed',width:100,classes:['detailed'], resizable: true }
            ],
        viewrecords: true,
     rowNum:100,
     rowList:[100,200],
     pager: '#debug_errors_pager',
     caption:"JSON Example"
 });
}

The data I'm passing in, results is an array of objects.

Issues:

1) The pager is totally off. It shows the correct count, but it doesn't actually let me page through the data.

2) I can't refresh the data. I'm using my own search function to arrive at my results. I can't figure out how to update the existing data. The grid initializes the first time. On subsequent attempts, it initializes to an empty table.

3) I've tried things like:

$grid.empty() - Doesn't work because the $grid object is decorated by jqgrid. I'm trying to "nuke" the old grid and simply re-render it as a workaround. `$grid.trigger('reloadGrid') - Doesn't work, don't know why.

Note: this is using jQGrid 3.7.

+1  A: 

question 1:

If we have defined a pager for grid with client side data, the buttons in pager 
are automatically disabled. In other words, the current release of grid does 
not support client side paging and serching. 

local data

Question 2: Have you try'd:

 $("#list").GridUnload();

see here for the diferences between girdUnload() and trigger('reloadGrid').

I hope this was helpfull.

Bruno

bruno
Yep I've tried GridUnload, No dice. The grid unloads and never comes back.
Koobz
Is it possible that your 'results' came via an ajax request, and when you 'unload' and reload your jqGrid, the results aren't loaded yet? So the grid will be empty? (that's the only thing i can imagine that can be wrong)
bruno