JQgrid FreezeColumn 没有冻结 headers?

JQgrid FreezeColumn not freezing headers?

我是 JQgrid 的新手,一直在尝试冻结网格中的第一列,以便水平滚动不会影响该列。

我在 colModel 中有 frozen: true,还有调用 Jquery("#grid").jqGrid('setFrozenColumns');

这正确地冻结了 DATA 列,但是当我向右滚动时,headers 列也随之滚动。我怎样才能冻结 headers 呢?

非常感谢!

示例代码:

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');

尝试使用free jqGrid 4.13.4 instead of Guriddo jqGrid JS 5.1.0, which you use currently. First of all it includes many fixes in frozen columns, contains many enhancements and its free in opposite to Guriddo jqGrid JS (see the prices here). To try free jqGrid you can just use load all jqGrid directly from CDN (see the wiki article)。

我建议您另外使用 datatype: "local"data: jQuery.parseJSON(document.form.taskData.value) 而不是 datatype: "jsonstring"datastr。仅当您需要 以防止 在初始加载期间对输入数据进行本地排序时,数据类型 "jsonstring" 才有用。如果您要使用 datatype: "local",则输入数据将根据 sortname: 'taskId'sortorder: "desc" 在本地 排序 ,然后才会显示。