exjs3.2的gridPanel的表头总宽度与列的总宽度不一致的解决方案

修复之前的bug问题

exjs3.2的gridPanel的表头总宽度与列的总宽度不一致的解决方案
exjs3.2的gridPanel的表头总宽度与列的总宽度不一致的解决方案

修复办法,谷歌浏览器中,table的单元格实际宽度=指定宽度+padding,所以只要重写gridview里的一个方法:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Ext.override(Ext.grid.GridView,{
getColumnStyle : function(colIndex, isHeader) {
var colModel = this.cm,
colConfig = colModel.config,
style = isHeader ? ‘‘ : colConfig[colIndex].css || ‘‘,
align = colConfig[colIndex].align;
if(Ext.isChrome){
style += String.format("width: {0};", parseInt(this.getColumnWidth(colIndex))-4+‘px‘);
}else{
style += String.format("width: {0};", this.getColumnWidth(colIndex));
}
if (colModel.isHidden(colIndex)) {
style += ‘display: none; ‘;
}
if (align) {
style += String.format("text-align: {0};", align);
}
return style;
}
});

看看修复过后的效果

exjs3.2的gridPanel的表头总宽度与列的总宽度不一致的解决方案

exjs3.2的gridPanel的表头总宽度与列的总宽度不一致的解决方案

上一篇:HTML Email 编写指南


下一篇:VMware Workstation 14 密钥