我有一个页面显示两种不同模式的表格.在每个模式中,我有一组不同的列.我使用jqGrid显示表.当我第二次尝试加载表(具有相同或不同的列时)表不会刷新数据.
是否有不同的API重新加载数据?还是应该用一些方法先清除表?
解决方法
今天遇到同样的问题.我使用jqGrid来显示一个或多个表单域中指定的参数的搜索结果.我在搜索按钮上有一个点击事件,并在字段本身上有一个keydown事件来捕获返回键.两个事件都调用一个函数来序列化表单并创建初始的jqGrid.
在初始网格中,我可以选择在gridCompletes调用函数reloadEvents:
gridComplete: reloadEvents
在reloadEvents函数中,我有:
$("#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"); });
如果您以不同的方式将数据加载到网格中,可以使用setGridParam来更改所需的任何内容. reloadGrid方法是根据您更改的参数刷新数据.