jqgrid调整宽度自适应

jqgrid调整宽度自适应 6  jqgrid属性:  width:Grid的宽度,如果未设置,则宽度应为所有列宽的之和;如果设置了宽度,则每列的宽度将会根据shrinkToFit选项的设置,进行设置。  shrinkToFit:此选项用于根据width计算每列宽度的算法。默认值为true。如果shrinkToFit为true且设置了width值,则每列宽度会根据width成比例缩放;如果shrinkToFit为false且设置了width值,则每列的宽度不会成比例缩放,而是保持原有设置,而Grid将会有水平滚动条。  autowidth:默认值为false。如果设为true,则Grid的宽度会根据父容器的宽度自动重算。重算仅发生在Grid初始化的阶段;如果当父容器尺寸变化了,同时也需要变化Grid的尺寸的话,则需要在自己的代码中调用setGridWidth方法来完成。  这些属性只能是保证第一次时的宽度,当浏览器大小变化如还想让表格宽度自适应,就需要用jqgrid的方法setGridWidth,它有两个参数,new_width,shr,当第二个参数不设置时会按照shrinkToFit的设置值或默认值,而第一个参数则要设置的新的宽度值,所以在些可用js实现对浏览器宽度变化的自适应:  $(function(){  $(window).resize(function(){  $("#analyDataTab").setGridWidth($(window).width()*0.99);  $("#charDataTab").setGridWidth(document.body.clientWidth*0.99);  });  });  注:这里的百分比可按自己需要来设定,也可直接是浏览器的宽度大小。




例子:

/**
 * 设置jqgrid宽度适应屏幕
 * @returns
 */
function resizeGrid(gridId){
    //document.getElementById(id).setGridWidth($(window).width()*0.99);(没有效果,因为setGridWidth这个方法是jquery下的方法,不能直接用js调用)
    //$("#gridTable").setGridWidth($(window).width()*0.99);      
    $("#"+gridId+"").setGridWidth($(window).width()*0.99);      
}


你可能感兴趣的:(jqgrid调整宽度自适应)