我将主网格设置为autowidth: true
,但是如何对子网格执行相同的操作以使其与父网格的宽度相同,并且列都是相对/可变/百分比宽度?< / p>
答案 0 :(得分:1)
你在评论中写到其他人回答问题
为什么colModel和subGridModel两个完全不同的数据 结构
间接地,你在主要问题上回答了自己。旧样式子网格的使用(请参阅the official jqGrid demo上的“高级”/“子网格”)有太多限制。如果您使用subgrid as grid(请参阅the the same jqGrid demo上的“高级”/“网格作为子网格”),您可以创建相同的结果,但更具灵活性。您可以使用格式化程序(包括自定义格式化程序)使用cellattr
和rowattr
回调,在子网格中使用autowidth: true
选项,依此类推。您拥有与主网格完全相同的可能性集。如果你在$.jgrid.defaults
中定义一些常见的回调,你可以共享子网格和主网格的回调代码......
我可以继续使用Grid作为Subgrid的优点列表。我的简短建议:始终只使用该功能。
答案 1 :(得分:0)
subGerid的宽度将在初始化时设置,并且因为它在构建时不包含任何数据,它将是总列宽的大小。每次加载子网格
时,可以通过设置网格的宽度来解决这个问题$('#ParentGridName, #SubGridName').jqGrid('setGridWidth', $('#IdOfHTMLElementHoldingGrids').width(), true);
这将同步父网格和子网格大小。如果您担心窗口被重新调整大小,您可以将其称为事件处理程序的一部分。
实施例
window.onresize = function () { resizePageGrids() }