ExtJs设置GridPanel表格文本垂直居中示例


Posted in Javascript onJuly 15, 2013

业务场景,需要实现最终效果图如下:
ExtJs设置GridPanel表格文本垂直居中示例 
GridPanel代码如下配置:

{ 
xtype : 'grid', 
id : 'grid_jglb', 
frame : true, 
region : 'center', 
title : '列表详细信息', 
columnLines : true, 
loadMask : true, 
store : 'test_store', 
viewConfig : { 
forceFit : true, 
scrollOffset : 0 
}, 
anchor : '100%', 
selModel : new Ext.grid.CheckboxSelectionModel({ 
moveEditorOnEnter : false, 
width : 28 
}), 
columns : [{ 
xtype : 'gridcolumn', 
id : 'gridcolumn_id', 
align : 'center', 
dataIndex : 'COLUMN1', 
editable : false, 
header : '列名1', 
sortable : true, 
width : 100 
}, { 
xtype : 'gridcolumn', 
align : 'center', 
dataIndex : 'COLUMN2', 
editable : false, 
header : '列名2', 
sortable : true, 
width : 100 
}, { 
xtype : 'gridcolumn', 
align : 'center', 
dataIndex : 'COLUMN3', 
editable : false, 
header : '列名3', 
sortable : true, 
width : 100 
}, { 
xtype : 'gridcolumn', 
align : 'center', 
dataIndex : 'COLUMN4', 
id : 'colidx1', 
editable : false, 
header : '列名4', 
sortable : true, 
width : 100 
}, { 
xtype : 'gridcolumn', 
align : 'center', 
dataIndex : 'COLUMN5', 
hidden : true, 
sortable : true 
}], 
bbar : { 
xtype : 'paging', 
autoShow : true, 
displayInfo : true, 
pageSize : 10, 
store : 'test_store' 
}, 
tbar : [{ 
text : '新增', 
iconCls : 'icon-add', 
id : 'btn_mxxz' 
}, '-', { 
text : '修改', 
iconCls : 'icon-edit', 
id : 'btn_mxxg' 
}, '-', { 
text : '删除', 
iconCls : 'icon-delete', 
id : 'btn_mxsc' 
}] 
}

JsonStore的代码就不贴出来了。接下来看看如何实现垂直居中了。
实现思路:通过获取DOM节点方式,获取到表格内所有的TD,设置需要居中的TD的 cssText的值为:'text-align:center;lineheight:130px;vertical-align:center;'
实现依据:Ext中GridPanel容器最终是生成DIV标签来渲染的,其中我们所看到的每一行记录,比如:“测试项,0,20”这一行数据就是被“包”在一个div内的一个table。只要我们根据Ext的生成规则找到该table,就可以操作其td元素了。
如图:
ExtJs设置GridPanel表格文本垂直居中示例 
实现过程如下:
Ext.getCmp("grid_jglb").getStore().on('load',setTdCls);//设置表格加载数据完毕后,更改表格TD样式为垂直居中 
function setTdCls(){ 
var gridJglb=document.getElementById("grid_jglb"); 
var tables = gridJglb.getElementsByTagName("table");//找到每个表格 
for(var k = 0; k < tables.length; k++){ 
var tableV=tables[k]; 
if(tableV.className=="x-grid3-row-table"){ 
var trs=tables[k].getElementsByTagName("tr");//找到每个tr 
for(var i = 0;i < trs.length;i++){ 
var tds=trs[i].getElementsByTagName("td");//找到每个TD 
for(var j = 1;j<tds.length;j++){ 
tds[j].style.cssText="width:202px;text-align:center;line-height:130px;vertical-align:center;"; 
} 
} 
}; 
} 
}
Javascript 相关文章推荐
读jQuery之六 缓存数据功能介绍
Jun 21 Javascript
js综合应用实例简单的表格统计
Sep 03 Javascript
jquery validate 自定义验证方法介绍 日期验证
Feb 27 Javascript
浅析Javascript ES6新增值比较函数Object.is
Aug 24 Javascript
AngularJS  自定义指令详解及实例代码
Sep 14 Javascript
JavaScript trim 实现去除字符串首尾指定字符的简单方法
Dec 27 Javascript
jquery.onoff实现简单的开关按钮功能(推荐)
May 24 jQuery
Vue中的基础过渡动画及实现原理解析
Dec 04 Javascript
详解Element 指令clickoutside源码分析
Feb 15 Javascript
说说Vuex的getters属性的具体用法
Apr 15 Javascript
javascript实现弹出层效果
Dec 10 Javascript
vue Treeselect下拉树只能选择第N级元素实现代码
Aug 31 Javascript
鼠标移动到图片名上,显示图片的简单实例
Jul 14 #Javascript
JS中获取数据库中的值的方法
Jul 14 #Javascript
js 实现日期灵活格式化的小例子
Jul 14 #Javascript
仿谷歌主页js动画效果实现代码
Jul 14 #Javascript
jquery.messager.js插件导致页面抖动的解决方法
Jul 14 #Javascript
jquery实现输入框动态增减的实例代码
Jul 14 #Javascript
javascript获取隐藏dom的宽高 具体实现
Jul 14 #Javascript
You might like
PHP中几个常用的魔术常量
2012/02/23 PHP
使用PHP如何实现高效安全的ftp服务器(一)
2015/12/20 PHP
PHP中include和require的区别实例分析
2017/05/07 PHP
js随机生成26个大小写字母
2016/02/12 Javascript
JS控制伪元素的方法汇总
2016/04/06 Javascript
javascript用正则表达式过滤空格的实现代码
2016/06/14 Javascript
Vue中props的使用详解
2018/06/15 Javascript
JavaScript日期工具类DateUtils定义与用法示例
2018/09/03 Javascript
使用Javascript简单计算器
2018/11/17 Javascript
vue实现日历备忘录功能
2020/09/24 Javascript
vue cli4.0项目引入typescript的方法
2020/07/17 Javascript
vue中el-input绑定键盘按键(按键修饰符)
2020/07/22 Javascript
详解Vue中Axios封装API接口的思路及方法
2020/10/10 Javascript
如何使用 vue-cli 创建模板项目
2020/11/19 Vue.js
Python脚本实现Web漏洞扫描工具
2016/10/25 Python
基于循环神经网络(RNN)的古诗生成器
2018/03/26 Python
python判断输入日期为第几天的实例
2018/11/13 Python
Python之循环结构
2019/01/15 Python
Python批量生成特定尺寸图片及图画任意文字的实例
2019/01/30 Python
导入tensorflow:ImportError: libcublas.so.9.0 报错
2020/01/06 Python
Windows下Pycharm远程连接虚拟机中Centos下的Python环境(图文教程详解)
2020/03/19 Python
python opencv图像处理(素描、怀旧、光照、流年、滤镜 原理及实现)
2020/12/10 Python
使用HTML5做个画图板的方法介绍
2013/05/03 HTML / CSS
HTML5 Canvas实现烟花绽放特效
2016/03/02 HTML / CSS
Darphin迪梵官网: 来自巴黎,植物和精油调制的护肤品牌
2016/10/11 全球购物
德国在线订购鲜花:Fleurop
2018/08/25 全球购物
党员的自我评价范文
2014/01/02 职场文书
安全大检查实施方案
2014/02/22 职场文书
物理系毕业生自荐书范文
2014/02/22 职场文书
董事长秘书工作职责
2014/06/10 职场文书
钱塘江大潮导游词
2015/02/03 职场文书
《角的度量》教学反思
2016/02/18 职场文书
超级实用!五步法则,教你写好年终工作总结
2019/12/05 职场文书
CSS3实现模糊背景的三种效果示例
2021/03/30 HTML / CSS
springboot中一些比较常用的注解总结
2021/06/11 Java/Android
Python 游戏大作炫酷机甲闯关游戏爆肝数千行代码实现案例进阶
2021/10/16 Python