2011-10-12 263 views
4

我正在使用shrinkToFit = true属性来适应具有列宽度(比例大小)的表格,同时我也想隐藏列但不想更改表格的宽度。如果shrinkTofit设置为true,则表格宽度也会随着隐藏列宽度的数量而缩小。让我举一个例子,在jqGrid中,是否可以在隐藏列后调整列宽以适应表格宽度(原始宽度)?

配置:

ShrinkToFit = true 
Table width = 800, 
Two columns exist: 
ColumnA width=200, 
ColumnB width=200 

当构建jqGrid的宽度可以这样来计算的是:

TableWidth = 800, 
Width of ColumnA = 400, 
Width of ColumnB = 400 

当ColumnB被设置为隐藏,宽度将是(正常行为):

table width=400 
ColumnA width =400 

我所期望的行为:

table width = 800 
ColumnA width = 800 

是有可能实现这种行为?

在此先感谢, Alper。

回答

8

如果我理解你正确,你可以叫setGridWidth方法一个更多的时间与当前电网widthtrue作为下一个(shrink)参数:

var myGrid = $("#list"), 
    width = myGrid.jqGrid('getGridParam', 'width'); // get current width 
myGrid.jqGrid('setGridWidth', width, true); 

这不会改变格栅的宽度,但强制收缩列。

+0

It rocks ..谢谢。我所做的是,在开始的集合shrinkToFit = false,并且再次按照您的建议调用setGridWidth。 –

+0

@Alper Turkyilmaz:不客气!如果问题解决了,您可以将答案标记为[“接受”](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235)。顺便说一句,你已经有权投票任何问题和答案[小限制](http://meta.stackexchange.com/questions/5212/are-there-any-voting-limits/5213#5213)30票天。投票是最重要的权利之一。我建议你使用它。 – Oleg

+0

谢谢你的回答@Oleg肯定你是JQGrid的主人之一! :D – will824