有没有办法让jqGrid自动根据行数调整高度,但当达到一定高度后,其高度不能再增加,竖直滚动条才会出现?
谢谢 D
试一试
jQuery("#yourid").jqGrid({
........
height:'auto'
});
尝试以下方法:
1. 在网格内定义高度
$("#griname").jqGrid(
{
rowNum : 1000,
viewrecords : true,
gridview : true,
autoencode : true,
loadonce : true,
width: "100%",
height: 300,
});
2. 这个函数可以用来将高度固定为预定义的值。
$(window).resize(function() {
if (typeof($gridname) !== 'undefined' && $("#gridname").length > 0) {
$discrepanciesResultGrid.setGridHeight(
$(window).height() - $("#gridname").position().top - 210
);
$gridname.setGridWidth($("body").width() - $("#anothercomponenetname").width() - 50);
}
.ui-jqgrid-view {
max-height: 642px;
}
.ui-jqgrid-bdiv {
overflow-y: scroll !important;
max-height: 600px !important;
}
我们的UI人员使用CSS解决了这个问题(如果有超过10个附件,则将列表扩展到300px,并显示垂直滚动条)。
#gview_list_Attachments .ui-jqgrid-bdiv{
max-height: 300px;
overflow-y: visible;
}
.ui-jqgrid-bdiv {
min-height:150px;
}
试试这个
$("#list1").parents(".ui-jqgrid-bdiv").css('height', jQuery("#list1").css('height'));
min-height
、max-height
或height
。$(window).load(
function () {
$('.ui-jqgrid-bdiv').css("min-height", "150px");
}
)
我使用 $(window).load()
,因为它会在所有脚本加载完成后运行。
ui-jqgrid-bdiv
只是网格内容的高度,不包括网格头、列头和分页器(页脚)。 - AaA添加这个:
var height = $(window).height();
$('.ui-jqgrid-bdiv').height(height);
loadComplete
内部设置网格的高度。您可以使用getGridHeight
和setGridHeight
方法。 - Oleg$("#list").parents('div.ui-jqgrid-bdiv').height()
。要获取包括所有标题在内的完整网格高度,可以使用$("#gbox_list").height()
。我在我的先前回答中向您介绍了这个方法,其中甚至包括相应的演示。要设置网格高度,您可以使用setGridHeight
方法。 - Oleg