jqgrid 页面大小变化,高度自适应
时间: 2023-08-16 07:26:11 浏览: 168
要实现 jqGrid 页面大小变化,高度自适应的效果,可以参考以下步骤:
1. 首先,需要在 jqGrid 初始化时设置 autowidth 和 autoheight 为 true,这样可以让表格根据容器的大小自动调整宽度和高度。
2. 接下来,需要在窗口大小变化时,重新计算表格的高度。可以使用 jQuery 的 resize() 方法来监听窗口大小变化事件,然后在事件处理函数中调用 jqGrid 的 setGridHeight() 方法来重新计算表格的高度。
示例代码如下:
```
$(window).on('resize', function(){
var gridHeight = $(window).height() - $('#gridWrapper').offset().top - 50;
$('#grid').jqGrid('setGridHeight', gridHeight);
});
```
其中,'#gridWrapper' 是 jqGrid 容器的父元素,50 是表格下方预留的空白高度,可以根据实际情况进行调整。
3. 最后,需要在页面加载时和窗口大小变化时触发一次 resize() 事件,以保证表格高度正确。
示例代码如下:
```
$(function(){
$(window).trigger('resize');
});
```
这样就可以实现 jqGrid 页面大小变化,高度自适应的效果了。
相关问题
jqgrid 高度自适应
要实现 jqGrid 的高度自适应,可以考虑以下两种方法:
1. 使用 autoheight 属性
将 jqGrid 的 autoheight 属性设置为 true,即可让 jqGrid 自动适应父容器的高度。示例代码如下:
```
$("#grid").jqGrid({
...
autowidth: true,
autoheight: true,
...
});
```
2. 使用 resizeGrid 方法
如果父容器的高度会动态变化,可以在容器高度变化时调用 jqGrid 的 resizeGrid 方法,重新计算 jqGrid 的高度。示例代码如下:
```
$(window).on('resize', function(){
$("#grid").jqGrid('resizeGrid');
});
```
需要注意的是,在使用 resizeGrid 方法之前,需要先设置 jqGrid 的 autowidth 属性为 true,以确保 jqGrid 能够正确计算宽度。
jqgrid 高度自适应铺满
如果想让 jqGrid 铺满整个父容器,可以采用以下方式:
1. 设置 jqGrid 的高度为 100%
将 jqGrid 的高度设置为 100% 可以让 jqGrid 铺满整个父容器。示例代码如下:
```
$("#grid").jqGrid({
...
autowidth: true,
height: "100%",
...
});
```
2. 动态计算 jqGrid 的高度
如果 jqGrid 所在的容器的高度不是固定的,可以通过计算容器的高度来动态设置 jqGrid 的高度。示例代码如下:
```
$(window).on('resize', function(){
var gridHeight = $(window).height() - $("#grid-container").offset().top;
$("#grid").jqGrid('setGridHeight', gridHeight);
});
```
这里假设 jqGrid 所在的容器的 ID 为 `grid-container`,在窗口大小改变时,重新计算容器的高度,并将计算出来的高度设置为 jqGrid 的高度。这样就可以让 jqGrid 铺满整个父容器了。
阅读全文