向jqGrid添加行的正确方法是什么?如果我这样称呼:
$('#quoteGrid').jqGrid('addRowData', undefined /* random row id */, rowData);
但是,如果我在以下任何时候调用此行,那么该行会出现在网格中:
$('#quoteGrid').trigger('reloadGrid');
这一行消失了。我检查了firebug,数据实际上被添加到数组中,但是在调用reloadgrid时它会被删除。
我的网格数据参数:
datatype: 'local',
data: data,
loadonce:true,
答案 0 :(得分:1)
它被添加到网格中,但不会添加到存储网格中显示的数据的本地对象。您可以在addRowData函数调用中挂接某些内容以将其附加到本地数据存储,然后它将在您的网格下次查找该对象以重新加载其数据时显示。
答案 1 :(得分:1)
我使用此代码解决了这个问题。此代码在添加行后执行,我获取Grid的更新数据,然后将其保存在本地对象中,然后将此本地对象重新分配给网格并重新加载网格到第1页。
var grid_data = $("#Grid_ID").jqGrid('getGridParam', 'data');
$("#Grid_ID").jqGrid('clearGridData').jqGrid('setGridParam', {
datatype: 'local',
data: grid_data,
rowNum: grid_data.length
}).trigger('reloadGrid', [{ page: 1}]);
答案 2 :(得分:-1)
我正在尝试Uzair's solution,但是$("#Grid_ID").jqGrid('getGridParam', 'data')
导致删除的行(网格有两行),我要做的就是使用$("#Grid_ID").jqGrid('getRowData');
代替。希望能帮助到你。