JQGrid - 动态更改列的宽度

Jem*_*emp 6 javascript jqgrid

据我所知,jqgrid每列的宽度是使用colModel参数定义的.假设我想在单击按钮后调整列的大小,我该如何执行此操作?

Piy*_*ana 13

您可以使用两种方法设置列的新宽度--setColProp和setGridWidth.

以下是设置列量新宽度的示例:

$("#mygrid").jqGrid('setColProp','amount',{width:new_width});

var gw = $("#mygrid").jqGrid('getGridParam','width');

$("#mygrid").jqGrid('setGridWidth',gw);
Run Code Online (Sandbox Code Playgroud)

PS注意,为了解决这个问题,一个shrinkToFit应该是true,或者你应该用第二个参数调用setGridWidth true

  • 这个解决方案有效,除了我需要在'setColProp'的调用中使用"widthOrg"而不是"width". (2认同)

r.p*_*ski 5

您好,这可以分两步完成:

a)更改标题单元格的宽度:

$('.ui-jqgrid-labels > th:eq(0)').css('width','200px')

b)改变列中单元格的宽度:

$('#grid tr').find("td:eq(0)").each(function(){$(this).css('width','200px');})

  • 使用类似`$('#grid').parents('.ui-jqgrid-view').find('.ui-jqgrid-labels> th:eq(0)').css('width', '200px');`只会更改指定的网格[例如:$('#grid')]而不是所有网格,如果你有多个网格. (3认同)