easyui中datagrid自适应浏览器大小

简介: 因为datagrid的fitColumns只有在初次加载数据的时候生效,所以在加载完数据后再改变浏览器大小,datagrid是不会改变大小的,只能保持在加载数据的时候的浏览器大小解决方法就...
因为datagrid的fitColumns只有在初次加载数据的时候生效,所以在加载完数据后再改变浏览器大小,datagrid是不会改变大小的,只能保持在加载数据的时候的浏览器大小

解决方法就是动态设置fitColumns:true

这个有个弊端就是 只要改变浏览器大小就要重新加载,即走一遍后台,比较消耗性能,所以在创建datagrid的时候尽量不要动态,写死,只动态生成数据就好,当然也不用担心,一般也没用户频繁缩放/放大

我的层级是 div-div-iframe-div-datagrid

步骤:

1. 设置公共方法,设置datagrid的属性  fitColumns:true  在浏览器大小改变时也一直存在

//浏览器窗口大小变化后,表格宽度自适应

    $(window).resize(function(){

        fitCoulms();

    });

//设置datagrid的大小始终自适应

function fitCoulms(){

    $('#grid'+id).datagrid({

        fitColumns:true

    })

   }

 

2. 改变datagrid中的列的宽度为百分比来实现列的宽度也自适应的效果

(如果只有第一步,里面的列的宽度不会自适应,只有总大小自适应)

公告方法:

//取浏览器可见宽度的百分比,percent为0.1,0.2,0.3对应总宽度的10%,20%,30%

function fixWidth(percent) {  

        returndocument.body.clientWidth * percent ;//document.body.clientWidth:浏览器可见宽度,这里可以自己做调整  

    }  

然后再设置列的时候调用就可以

var columns=[[

        {

        field:'id1',

        title :'编号',

        checkbox :true

        },{

        field:'id',

        title:'id',

        hidden:true,

        },{

        field:'tradeName',

        title:'经营单位名称',

        align :'center',

        width:fixWidth(0.1),

        },{

        field:'ownerName',

        title:'加工单位名称',

        align :'center',

        width:fixWidth(0.1),

        },{

        field:'declareDate',

        title:'申报日期',

        align :'center',

        width:fixWidth(0.05),

        },{

        field:'updateTime',

        title:'更新时间',

        align :'center',

        width:fixWidth(0.05),

        },{

        field:'status',

        title:'状态',

        align :'center',

        width:fixWidth(0.02),

        }

]];

 如有问题可在下方评论。

 

目录
相关文章
|
6月前
EasyUI datagrid 从左至右递归合并表格
EasyUI datagrid 从左至右递归合并表格
39 2
|
6月前
EasyUI DataGrid 假分页
EasyUI DataGrid 假分页
68 0
|
6月前
|
JavaScript 前端开发
EasyUi js 加载数据表格DataGrid
EasyUi js 加载数据表格DataGrid
|
6月前
|
前端开发
easyui datagrid 的 tip实现
easyui datagrid 的 tip实现
160 0
|
6月前
|
JSON 监控 数据格式
Easy UI datagrid的学习
Easy UI datagrid的学习
Easyui datagrid 编辑结束时combobox显示value而不显示text
Easyui datagrid 编辑结束时combobox显示value而不显示text
EasyUI中datagrid的行编辑模式中,找到特定的Editor,并为其添加事件
EasyUI中datagrid的行编辑模式中,找到特定的Editor,并为其添加事件
265 0
EasyUI DataGrid 可编辑列级联操作
EasyUI DataGrid 可编辑列级联操作
easyui datagrid reload后自动全选解决
easyui datagrid reload后自动全选解决

热门文章

最新文章