How can you create a grid but not load any data?
If I omit the url
option then the loadError
callback is triggered.
Currently we set
You should just use datatype: 'local'
initially. At the moment when you need to load the data you should change the datatype
to json
or xml
:
$("#list").jqGrid('setGridParam',{datatype:'json'}).trigger('reloadGrid');
I wanted to create a grid that loads no data when the page is loaded but loads data, when the user clicks refresh or uses the search. My solution is a little bit hacky to but is very easy and works nicely.
I am using the callback event loadBeforeSend
to stop the ajax request for data when the page is loaded. My callback function removes itself so it will be executed only once.
loadBeforeSend: function (xhr, settings) {
this.p.loadBeforeSend = null; //remove event handler
return false; // dont send load data request
}
Do not set URL when you initialize the Grid. Set URL just before loading the grid using setGridParam function.
It works for me.