I ran into this same problem today. I use jqGrid to display search results from parameters specified in one or more form fields. I've got a click event on the search button and a keydown event on the fields themselves to capture the return key. Both events call a function that serializes the form and creates the initial jqGrid.
In the initial grid I have the option to call the function reloadEvents when the gridCompletes:
gridComplete: reloadEvents
In the reloadEvents function I have:
$("#frmSearch").bind("keydown", function(e) {
if (e.keyCode == 13) {
$('#searchList').setGridParam({url:'/model/actSearch.cfm?'+$('#frmSearch').serialize()});
$('#searchList').trigger("reloadGrid");
}
});
$('#btnSearch').click(function(){
$('#searchList').setGridParam({url:'/model/actSearch.cfm?'+$('#frmSearch').serialize()});
$('#searchList').trigger("reloadGrid");
});
If you're loading your data in your grid a different way you can use setGridParam to change whatever you need. The reloadGrid method is what should refresh your data based on the params you change.