【问题标题】:Jqgrid is not resizing as the resolution changesJqgrid 不会随着分辨率的变化而调整大小
【发布时间】:2015-10-13 09:34:52
【问题描述】:

[![调整大小后页眉和页脚变形] 我正在使用 jqgrid 3.8.2。当我更改窗口的分辨率时,我注意到 jqgrid 的宽度和位置保持不变,而不是适应给定的分辨率。我尝试使用resizesetGridwidth,但没有运气。我需要 chrome、IE9 和 firefox 的支持。我还 b=注意到网格表的宽度固定为某个值。,我如何调整它的大小在不影响 hdiv、bdiv 和 sdiv 组件的情况下更改分辨率?

$(window).bind('resize', function() {
    //alert("resize")
    jQuery("#list").setGridWidth($(window).width());
    $('#gbox_list').width('');
}).trigger('resize');

【问题讨论】:

  • 您需要支持哪些浏览器(IE 的哪个版本:例如 ie8 或更高版本)?你用了什么resize,但它不起作用?
  • 您好,我需要chrome、mozilla和IE9的支持。附上resize函数的代码
  • 将信息编辑到您的问题而不是评论中,并提供尽可能多的信息。这样你就更有可能得到答案
  • 您添加文本“不影响 hdiv、bdiv 和 sdiv 组件”。对不起,但这没有意义。网格由相对复杂的 div 和表格结构组成。 bdiv(body div)、hdiv(header div)和sdiv(summary、footer div)的宽度必须对应main<table>与main data的宽度。
  • @Oleg 感谢您的回复。但是我看到页眉和页脚未与网格单元格对齐。是因为 colmodel 中给出了固定的列宽吗?如何使页眉和页脚行随着网格调整大小而动态变化?

标签: javascript jquery html jqgrid jqgrid-formatter


【解决方案1】:

试试这个:

$(window).on('resize.jqGrid', function(){
    table.jqGrid('setGridWidth', container.width());
})

table是jqGrid中的table元素,container是包含jqGrid元素的div

【讨论】:

  • @PoornaMurali:抱歉,它应该可以工作!你应该验证你做了什么(tablecontainer)。调整大小的确切结果可能有点取决于您在 jqGrid 中使用的其他选项(例如shrinkToFit 选项)。
  • 嗨 Oleg,现在我可以调整网格大小,但页脚和标题行与网格不对齐。stackoverflow.com/questions/33118099/… 也附上屏幕截图。
  • @PoornaMurali:您应该提供重现问题的演示。可能是你有一些问题,因为你使用的是 jqGrid 的复古版本。更现代的 jqGrid 版本没有这样的问题。请参阅jsfiddle.net/OlegKi/andm1299/8,它还使用classes: "hidden-xs", labelClasses: "hidden-xs" 根据网格的分辨率隐藏最后一列。
  • 谢谢 Oleg。我也可以在我的网格中使用这些类吗?或者它仅在最新版本的网格中支持?
  • @PoornaMurali:jqGrid 3.8.2 非常旧。它已经有将近 5 年的历史了,它是在 Internet Explorer 8 的时候开发的,现在已经出来了。 labelClasses 在版本中不受支持。我从版本 4.8 开始在我的 jqGrid (free jqGrid) 分支中实现了该功能。当前版本的免费 jqGrid 4.9.2,但我计划很快发布 4.9.3。
猜你喜欢
  • 2011-05-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-17
  • 2013-01-30
相关资源
最近更新 更多