我的应用程序中有一个网格。为了填充数据,用户填写表格并提交。服务器使用包含 all 网格结果的JSON数据进行响应(服务器不再被命中)。
就jqGrid而言,设置为loadonce: true
和datatype: "json"
。但这些并不能共同发挥作用。
我一直在做的 - 这似乎是一种糟糕的做法 - 如下所示,它会更改网格设置,加载数据并更改网格的设置。
$("#myGrid").jqGrid("setGridParam", {datatype: "json", loadonce: true});
$("#myGrid")[0].addJSONData(data);
$("#myGrid").jqGrid("setGridParam", {datatype: "local", loadonce: true});
还有另一种更好的方式吗?
谢谢!
答案 0 :(得分:2)
如果您设置了正确的url
网格,并且网格将填充服务器数据(有或没有loadonce:true
),那么要从服务器重新加载数据,您可以执行以下内容:
$("#myGrid").jqGrid("setGridParam",{datatype:"json"}).trigger("reloadGrid");
或
$("#myGrid").jqGrid("setGridParam",{datatype:"json"}).trigger("reloadGrid",[{page:1}]);
答案 1 :(得分:1)
我刚刚使用afterSubmit
事件解决了同样的问题,用于创建/编辑/删除操作。这是问题和答案:
答案 2 :(得分:1)
我遇到了同样的问题,我的解决方案是:
$("#myGrid").jqGrid('setGridParam', { url: 'MyNewUrl', datatype:"json" });
$("#myGrid").trigger("reloadGrid");
或
$("#myGrid").jqGrid('setGridParam', { url: 'MyNewUrl', datatype:"json"}).trigger("reloadGrid");
我希望它适合你。