当我调用事件" reloadGrid"像subgrid这样的事件
$('#subgrid_id').trigger("reloadGrid");
父网格正在重新加载以及折叠子网格并删除所有子网格HTML代码。
如何防止此行为并仅重新加载子网格?
我正在使用jQgrid 4.5.2。
答案 0 :(得分:1)
您应该验证如何在subGridRowExpanded
回调中构建子网格的ID。你使用subgrids,对于所有子网格以及主网格和子网格的所有rowid进行完全控制非常重要。所有ID必须是唯一的。您应该根据subGridRowExpanded
回调的第一个参数构建subgridgrid的id,或者通过调用方法$.jgrid.randId()
来构造它,该方法在每次调用时返回唯一ID。
我严格建议您为子网格使用额外的唯一idPrefix
选项。您可以根据idPrefix
回调的输入参数构建subGridRowExpanded
选项的值。然后rowid将根据数据的id构建,但是id将具有前缀。例如,您可以使用第二个参数rowid
,其后缀为idPrefix: rowid + "_s_"
。因此,如果您的主网格数据的ID为10,20,30 ...并且子网格的数据包含ID 10,15,20,则jqGrid将使用子网格的rowid:20_s_10
,{{1通过打开主网格ID为20的行,为子网格创建20_s_15
。我希望我不要把你与这个例子混为一谈。无论如何,我建议您打开网格的2-3个子网格,并仔细检查哪些ID包含子网格的每个子网格和主网格行。你应该找不到重复的id。