【问题标题】:JQgrid FreezeColumn not freezing headers?JQgrid FreezeColumn 不冻结标题?
【发布时间】:2016-12-30 18:32:10
【问题描述】:

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

我在colModel 中有frozen: true,并拨打了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');

【问题讨论】:

  • 您使用的是什么版本的 jqGrid?我认为它在某些旧版本中无法正常工作。 stackoverflow.com/a/8486592/1491895 表示它是在 4.3 中实现的。它在stackoverflow.com/a/8486592/1491895的演示中工作
  • @Barmar 我使用的是 5.1.0 版。除了我使用数据类型:jsonstring 和 datastr 之外,我的网格与那个演示非常相似。没有在网上看到任何关于它与 IE11 不兼容的信息,但那是我正在使用的浏览器。
  • @newToJQGrid:尝试使用free jqGrid 4.13.4,而不是您当前使用的Guriddo jqGrid JS 5.1.0。首先,它在冻结列中包含许多修复,包含许多增强功能,并且它与 Guriddo jqGrid JS 相对免费(参见价格here)。要试用免费的 jqGrid,您可以直接从 CDN 加载所有 jqGrid(请参阅 the wiki article)。
  • @newToJQGrid:我建议您另外考虑使用datatype: "local"data: jQuery.parseJSON(document.form.taskData.value) 而不是datatype: "jsonstring"datastr。如果 jqGrid 对您来说是新的,那么来自here 的信息可能对您来说也很有趣。
  • @Oleg:谢谢你的推荐。切换到数据类型:“本地”并释放 jqGrid 后,冻结按预期工作。

标签: javascript jquery jqgrid jqgrid-formatter


【解决方案1】:

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

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

【讨论】:

  • 基于您在不同线程中的一些 cmets,我有点困惑。我看到您向尝试在colModel 中使用jsonmap 的用户建议datatype: "jsonstring"。我一直在尝试在我的网格中绑定嵌套的 JSON 数据。我应该提出一个新问题吗?
  • @newToJQGrid:对不起,你的意思是什么?哪些 cmets,哪些线程?
  • @newToJQGrid:您在哪里发现了一些问题?为什么你很困惑?您在 JSON 数据中使用点吗?您没有发布任何 JSON 数据示例'roleInfo.1' 表示的不是名称为'roleInfo.1' 的属性,而是'item.roleInfo.1''item.roleInfo[1]' 之类的语句,其中item 表示行。您有哪些数据作为 jqGrid 的输入?
  • 在这里创建了新问题:stackoverflow.com/questions/39213851/…
猜你喜欢
  • 2017-09-06
  • 2015-02-21
  • 1970-01-01
  • 1970-01-01
  • 2011-06-02
  • 1970-01-01
  • 1970-01-01
  • 2021-01-24
  • 2019-05-11
相关资源
最近更新 更多