繁体   English   中英

jqGrid:从json-string重新加载数据

[英]jqGrid: reload data from json-string

我知道,SO上存在几个类似的问题,但是尽管如此,我还是创建了这个问题,因为:
-我还是不明白:)
-我想创建一个可能涵盖更完整问题的主题。

我以简化的方式重建了生产设置,可以通过下面的链接获得它。 简而言之-我有一个简单的jqGrid,它使用jsonstring作为dataType ,并使用JSON数据的datastr 然后通过触发:

$("#grid").setGridParam({'datastr': myNewData}).trigger('reloadGrid');

我试图重新加载网格中的数据,但它不起作用。 我想念什么?

ps
对我来说也很重要,该网格具有用userdata定义的摘要行。

下载设置

这是非常难得,你真的需要使用datatype ,其值作为其他"local""json""jsonp""xml" 其他datatype大多数用法可以很容易地替换为树主数据类型。 如果使用"jsonstring""xmlstring""clientSide"则在加载数据后,数据datatype将更改为"local" (例如,参见源代码 )。 因此,如果您确实需要使用datatype: "jsonstring" ,则可以按使用情况修复重新加载

$("#grid").setGridParam({
    datastr: myNewData,
    datatype: "jsonstring" // !!! reset datatype
}).trigger("reloadGrid");

另外,我可以看到您使用了jqGrid的pager: false选项。 这是错误的选择。 如果您不需要使用本地数据分页,建议您

  1. 不包括和pager选项。 默认值pager: ""已经可以。
  2. 包含具有足够大的值的rowNum参数,例如rowNum: 10000 rowNum默认值为20。因此,如果您不想仅显示输入数据的前20行,则应增加rowNum的值。

最后一条建议:您应该包含整数值的列中包括sorttype: "integer" (请参阅文档 )。 如果用户单击列标题,它将修复数据排序。 您也应该考虑使用列模板(请参阅旧答案 )。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM