I have a jqGrid in a tab that is initalized on page load, but at that time the tab is not visible yet. Because the tab is not visible, the grid JSON data should not be loaded right after grid initialization. It’s not very intuitive to get this done, but it’s quite easy to do!

Set the grid attribute:

datatype: local

If the tab is clicked the following code must be executed to load the Grid data:

$('#my-jqgrid-ID')
    .jqGrid('setGridParam', { 'datatype' : 'json' })
    .trigger('reloadGrid');