我的应用程序有可能会或可能不会含有足够的行需要一个垂直滚动条数jqGrids。 但行可能会动态地添加到这些网格他们已经创建后,使网格最终可能需要滚动条。
问题是,如果电网没有足够的行需要滚动条,对网格的右边空白处。 我想以某种方式解决这个问题 - 无论是始终显示垂直滚动条,或以某种方式动态地添加必要时。
我尝试添加以下CSS到网格的的.ui-的jqGrid-BDIV格:
overflow-y: scroll;
使用下面的jQuery(代码是丑陋的,我知道):
$("#mygrid").closest(".ui-jqgrid-bdiv").attr("style",
$("#mygrid").closest(".ui-jqgrid-bdiv").attr("style") + " overflow-y: scroll; ");
这适用于Firefox和Chrome罚款,但在IE电网永远不会显示滚动条(无论多少行添加,他们添加到网格的底部和垂直滚动条永远不会出现)。
任何帮助表示赞赏!
overflow-y
是CSS3,并且它尚未完全支持IE(叹气......)
所以,我想的只有2件CSS事情你可以做这个,不涉及任何其他标记,是为使用overflow: auto
(这将让浏览器决定)或overflow: scroll
,这将迫使垂直和水平滚动条。
一种解决方法可能是包裹整个网格与最小高度更大的DIV,所以你设置等于浏览器窗口+ 1像素。 这样,你会强迫垂直滚动条。
设置一个最小高度可能会非常棘手,在所有浏览器做的,但我发现他们大多这一伟大工程。
.the-wrapper{
height: auto !important; /* for real browsers*/
height: 601px; /* IE6 will use this a min-height. Use any height you need - you can even set this using JavaScript depending on the browser window height */
min-height: 601px; /* for real browsers - same value as height */
}
当然,这会增加网格下面的一些空间。 欢迎加入!
您设置了电网的高度财产? 如果没有高度设置IE可以得到脾气暴躁带有滚动条。
有一个scrollOffset
的jqGrid的选项。
将它设置为零,空的空间消失。
你尝试的jqGrid 3.6测试版,它有很多新的功能,如: 真正的滚动行 ,我认为,这是给你的解决方案。
新功能演示: http://www.trirand.com/jqgrid/jqgrid36/jqgrid.html
Alsow有新的方法添加: gridResize
可以调整网格的大小。 http://github.com/tonytomov/jqGrid/commit/a008ebf7b8ad684b21e51f21eed4301b82bc66f2