easyui datagird 列宽自适应

本文介绍了一段JavaScript代码,用于从JSON数据中获取每列的最大字符数,并据此调整表格列的宽度。代码包括遍历数据、计算最大字符数、设置列宽度等关键步骤。

代码如下:

 1 onLoadSuccess: function (data) {
 2                 var rows = data.rows; //得到行数据  
 3                 var columnMaxCharacter = new Array(); //该列最大字符数  
 4                 //遍历所有行数据,获得该列数据的最大字符数  
 5                 var propertys = Object.getOwnPropertyNames(rows[0]);
 6                 for (var i = 0; i < rows.length; i++) {
 7                     for (var j = 0; j < propertys.length; j++) {
 8                         var s = eval('rows[' + i + '].' + propertys[j]);
 9                         //s = s.replace('<center>', ''); //屏蔽html标签  
10                         //s = s.replace('</center>', '');
11                         if ((typeof columnMaxCharacter[propertys[j]]) == 'undefined') {
12                             columnMaxCharacter[propertys[j]] = 0;
13                         }
14                         if ( s != null) {
15                             if (s.length > columnMaxCharacter[propertys[j]]) {
16                                 columnMaxCharacter[propertys[j]] = s.length;
17                             }
18                         }
19                     }
20                 }
21 
22                 //设置列宽度和字体  
23                 for (var j = 0; j < rows.length; j++) {
24                     //得到该列的字体  
25                     //    alert($("td[field='"+cls[j]+"'] div").get(0).currentStyle);  
26                     // var fontSize=$("td[field='"+cls[j]+"'] div").get(0).currentStyle.fontSize;//获得字体大小  
27                     //  fontSize= fontSize.replace("px","");//去掉px方便运算  
28                     var fontSize = 12;
29                     var w = fontSize * (columnMaxCharacter[propertys[j]] + 1); //求出宽度  
30                     //设定该列的宽度  
31                     $("td[field='" + propertys[j] + "'] div").width(w);
32                 }
33 
34             }

转载于:https://www.cnblogs.com/pyrebot/p/3849019.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值