2010-03-04 71 views
0

我有一个需要滚动的JQGrid。它在Firefox中运行良好,但在IE6中,网格保持静止,而其余内容在其下滚动。如何让JQGrid在IE6中正确滚动?

什么可能是一个复杂的因素是网格是在标签内,在对话框内。

我已经遍地搜索,但我找不到这个问题的解决方案,所以我转向了Stackoverflow。有没有人知道可能会导致这种行为?

我正在使用jqgrid 3.5.3,应该如此。

+0

这无疑是由于你的容器/标签/对话框,如果你与该信息和标记更新,它会帮。 – 2010-03-04 13:41:40

回答

1

我对IE6有这个相同的问题。我花了一段时间才解决,但这是我的解决方案,我希望它适用于其他人。

您需要在JQGrid的页面部分添加2个项目,您可以在其中定义添加,编辑,删除等属性。

  1. 滚动:1 - 这告诉对话框中滚动
  2. afterShowForm:功能(形式){form.css( “高度”, “300像素”); } - 这解决了IE6的一些绘制问题,它再次强制对话框滚动。

如果您希望对话框滚动并同时从该部分删除任何现有的高度属性,则需要将这两个属性一起使用。你不必创建form.css文件,至少我没有,它只是按原样运行。

 { add: false, edit: true, del: false, refresh: true, search: true }, //general options 
     { 
     //Options for the Edit Dialog 
      editCaption: 'Edit Data', 
     width: 500, 
     modal: true, 
     scroll: 1, 
     closeAfterEdit: true, 
     onclickSubmit: function(eparams) { 
      var sr = jQuery("#MyGridTbl").getGridParam('selrow'); 
      var currentRow = jQuery("#MyGridTbl").getRowData(sr); 
      return { Id: currentRow.Id }; 
     }, 
     afterShowForm: function(form) { form.css("height", "300px"); } 
    }, 
     { 
     }, 
     { 
     }, 
     {} //Search options 
    ); 
0

为什么在2001年(9岁!)发布的浏览器的功能为何,甚至不再受到其创建者的支持?我知道他们直到2014年才正式“支持”IE 6,但由于缺乏对web标准和新技术的支持,我建议您的项目访问者升级他们的系统。 (因为除了缺乏对现代网络糖果的支持,它只是一个有问题且不安全的浏览器)

+0

嘿,那也是我的建议,但这不是我的要求。显然有一个地方涉及的后勤噩梦,它只需要在IE6中工作,无论它多么糟糕。 – mcv 2010-03-04 15:56:39

1

我有类似的问题。我的网格是在一个div中。这个div有垂直滚动条。我的问题是,当我滚动div时,网格保持静态。花了我一些时间来弄清楚这是破坏网格位置的div定位。将div的位置更改为相对,并按照它的顺序滚动。 无论如何只是想我分享,因为我觉得这个论坛非常有用(!)。

感谢, 托马斯