23

I am using jqGrid with the autowidth option set to true.

According to the documentation:

When set to true, the grid width is recalculated automatically to the width of the parent element. This is done only initially when the grid is created. In order to resize the grid when the parent element changes width you should apply custom code and use a setGridWidth method for this purpose

This makes the grid occupy all the width available in the parent element. Another effect of this property is that every column shrinks to fit the width available.

This works very well. However, I have one page where don't want the columns to shrink to fit the grid width, but they should occupy the space that I set within the colModel for them.

How can I achieve this?

Jay Sullivan
  • 14,694
  • 8
  • 54
  • 79
Lorenzo
  • 28,103
  • 43
  • 117
  • 208

2 Answers2

27

Solution: shrinkToFit: false

Lorenzo
  • 28,103
  • 43
  • 117
  • 208
12

set

autowidth=true, shrinkToFit=false

this setting will make width of jqgrid frame equal the parent ( usually equal the width of browser ) ; and column width equal the width defined in colModel ; unfornatelly jqgrid 4.3 donot give an simple way by setting a property to auto fit/resize the column width basing on width of the content ( text in cell );

default in jqgrid :

autowidth=false, shrinkToFit=true

please see the three properties of options of jqgrid in jqgrid option wiki;

autowidth

shrinkToFit

width

and property of colModel in jqgrid colModel wiki

width

fixed

I think the priority for jqgrid frame width is *jqgrid frame autowidth > jqgrid frame width > sum of column width *

the priority for column width is colmodel fixed > jqgrid frame shrinkToFit > colmodel width

phil
  • 610
  • 7
  • 12