JQgrid FreezeColumn没有冻结标题?

时间:2016-08-23 19:44:04

标签: javascript jquery jqgrid jqgrid-formatter

我是JQgrid的新手并且一直试图冻结网格中的第一列,因此水平滚动不会影响该列。

frozen: true中有colModel,并且呼叫Jquery("#grid").jqGrid('setFrozenColumns');

这正确地冻结了DATA列,但是当我向右滚动时,列标题会随我滚动。我怎么能冻结标题呢?

非常感谢!

示例代码:

jQuery("#taskGrid").jqGrid({
datatype: "jsonstring",
colNames:['task ID','TASK Name', 'ROLE Info'],
colModel:[
    {name:'taskId',index:'taskId', width:100, frozen: true},
    {name:'taskName',index:'taskName', width:200},
    {name: 'roleInfo.1', index: 'roleInfo.1', width:100, formatter: 'checkbox' }

],
jsonReader: {repeatitems: false},
datastr: JSON.parse(document.form.taskData.value),
rowNum:50,
pager: '#pager2',
sortname: 'taskId',
viewrecords: true,
sortorder: "desc",
caption:"JSON Example",
height: "750", 
width: "350",
shrinkToFit: false
});jQuery("#taskGrid").jqGrid('setFrozenColumns');

1 个答案:

答案 0 :(得分:0)

尝试使用free jqGrid 4.13.4而不是当前使用的Guriddo jqGrid JS 5.1.0。首先,它在冻结列中包含许多修复,包含许多增强功能,并且与Guriddo jqGrid JS相反(参见价格here)。要尝试免费的jqGrid,您可以直接从CDN使用加载所有jqGrid(请参阅the wiki article)。

我建议您另外使用# nginx -p /etc/nginx/nginx.conf datatype: "local"代替data: jQuery.parseJSON(document.form.taskData.value)datatype: "jsonstring"。只有在初始加载期间需要来阻止输入数据的本地排序时,数据类型datastr才有用。如果您使用"jsonstring",那么输入数据将基于datatype: "local"sortname: 'taskId' 在本地排序,然后才会显示。