easyui中datagrid自适应浏览器大小

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

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

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

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

步骤:

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

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

    $(window).resize(function(){

        fitCoulms();

    });

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

functionfitCoulms(){

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

        fitColumns:true

    })

   }

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

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

公共方法:

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

functionfixWidth(percent) {  

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

    }  

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

varcolumns=[[

        {

        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),

        }

]];

 如有问题可在下方评论。

 

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

幻凡ss

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值