3

我有一个有 2 列的网格。以下是列模型:

colModel.append("{name:\"group_id\",index:\"GOID\",width:80,sortable:true,align:\"left\", formatter:linkFormat, unformat:unformatLink}\n")
        .append(",{name:\"group_name\",index:\"GNAME\",width:350,sortable:true,align:\"left\", formatter:formatHtml, unformat:unformatHtml}");

表格网格宽度为 95%,并根据窗口大小而变化。

现在我需要自动调整两个列的宽度来填充整个网格。我不想在网格末尾显示空白区域。

4

1 回答 1

5

由于评论中提到的内容有效,因此我将添加此答案以确保完整性。根据 jqGrid 的wiki自动调整列,您可以使用该选项 shrinktofit:true

根据 wikiShrinkToFit执行以下操作:

如果设置此选项,则定义如何重新计算网格列的宽度,同时考虑网格的宽度。如果此值为真,并且列的宽度也已设置,则每列都按其宽度成比例缩放。例如,如果我们定义了宽度为 80 和 120 像素的两列,但希望网格的宽度为 300 像素,那么列将拉伸以适应整个网格,分配给它们的额外宽度将取决于宽度列本身和可用的额外宽度。重新计算如下:第一列得到宽度(300(新宽度)/200(所有宽度之和))*80(第一列宽度)= 120像素,第二列得到宽度(300 (新宽度)/200(所有宽度之和))*120(第二列宽度)= 180 像素。现在列的宽度总计为 300 像素,即网格的宽度。如果该值为 false 并且设置了 width 选项中的值,则不会发生任何调整大小。因此在本例中,如果将 shrinkToFit 设置为 false,则第一列的宽度为 80 像素,第二列的宽度为 120 像素,网格将保留 300 像素的宽度。如果shrinkToFit的值为整数,则根据它计算宽度。- 可以详细说明使用整数的效果。第二列的宽度为 120 像素,网格将保持 300 像素的宽度。如果shrinkToFit的值为整数,则根据它计算宽度。- 可以详细说明使用整数的效果。第二列的宽度为 120 像素,网格将保持 300 像素的宽度。如果shrinkToFit的值为整数,则根据它计算宽度。- 可以详细说明使用整数的效果。

于 2012-09-13T11:50:39.707 回答