我想保存jqgrid的coumns的宽度,当用户重新调整列的宽度时应保存宽度,因此下次当用户打开页面时,宽度应与用户相同。有可能吗?
js code
{ name: 'FirstName', index: 'FirstName', width:100, align: "left", sorttype: 'text', resizable: true, editable: true, editrules: { required: true } },
我尝试了shrinkToFit:false,
autowidth:false
任何想法,任何建议将不胜感激......如果它对我有用,我会将其标记为答案
感谢。如果您需要有关代码的任何额外信息,我在这里解释..只是评论;)
答案 0 :(得分:2)
jqGrid在创建网格后不提供任何API来更改列宽,但我创建了执行此操作的插件。您可以从here下载jQuery.jqGrid.setColWidth.js
,在jqGrid JavaScript文件之后将其包含在内,然后您可以在表单中使用新的setColWidth
方法
$("#grid").jqGrid("setColWidth", colNameIrIndex, newWidth);
方法setColWidth
将在更改列宽后调整总网格宽度。如果您不需要,可以添加false
作为setColWidth
的最后一个参数:
$("#grid").jqGrid("setColWidth", colNameIrIndex, newWidth, false);
有关您在the answer和this one中找到的方法的其他详细信息。
可能您可以编写代码,以便在创建网格之前设置列的宽度。在这种情况下,您将不需要方法setColWidth
。例如,您可以尝试the demo中的the answer(另请参阅the previous answer)。如果更改某些列的宽度然后重新加载整页,您将看到将使用上次使用的列宽度创建网格。它不符合您的要求吗?