jqgrid treegrid如何重新加载数据?

jqgrid treegrid how to reload data?

我知道如何重新加载正常的 jqgrid table。我用同样的方法重新加载了treegrid,但是没有用。

重载jqgrid的常用方法:

$jqGrid.jqGrid('setGridParam',{ 
        url:path+"/admin/demo/getLogsGridJson.do", 
        postData:{'aaa':111,'bbb':222}, //
        page:1 
}).trigger("reloadGrid");  

这样我就可以再次请求和刷新数据了。但是对于 treegrid 它不起作用。

如何重新加载 treegrid 以使用新的 postData 或新的 url?

要使用新的 post 数据重新加载 jqGrid TreeGrid,您需要像这样

将 treedattype 设置为 json
$jqGrid.jqGrid('setGridParam',{ 
    url:path+"/admin/demo/getLogsGridJson.do", 
    postData:{'aaa':111,'bbb':222}, //
    page:1,
    treedatatype : 'json'
}).trigger("reloadGrid");

您可以在 Guriddo jqGrid Documenatation here 中阅读有关为什么会这样的更多信息 亲切的问候

尝试将 TreeGrid 的 treeANode 参数重置为 -1。您可以将不需要的 page:1 设置替换为 treeANode:-1。如果您之前加载过大量数据,可以考虑在 setGridParam 的选项中添加 data: [], _index: {} 以提高性能。