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拖动插件(jquery.drag)使用介绍
Jun 18 Javascript
jQuery实现类似淘宝购物车全选状态示例
Jun 26 Javascript
文本框文本自动补全效果示例分享
Jan 19 Javascript
JavaScript函数模式详解
Nov 07 Javascript
必备的JS调试技巧汇总
Jul 20 Javascript
全屏滚动插件fullPage.js使用实例解析
Oct 21 Javascript
超全面的javascript中变量命名规则
Feb 09 Javascript
ES6学习笔记之Set和Map数据结构详解
Apr 07 Javascript
React之PureComponent的使用作用
Jul 10 Javascript
vue移动端实现手机左右滑动入场动画
Jun 17 Javascript
JavaScript代码实现微博批量取消关注功能
Feb 05 Javascript
手写实现JS中的new
Nov 07 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 3行代码的分页算法(求起始页和结束页)
2009/10/21 PHP
php引用返回与取消引用的详解
2013/06/08 PHP
php批量删除数据库下指定前缀的表以prefix_为例
2014/08/24 PHP
MySql数据库查询结果用表格输出PHP代码示例
2015/03/20 PHP
PHP用FTP类上传文件视频等的简单实现方法
2016/09/23 PHP
PHP执行系统命令函数实例讲解
2021/03/03 PHP
JavaScript 继承详解(二)
2009/07/13 Javascript
javascript算法题 求任意一个1-9位不重复的N位数在该组合中的大小排列序号
2012/07/21 Javascript
js精度溢出解决方案
2012/12/02 Javascript
jQuery实现返回顶部效果的方法
2015/05/29 Javascript
WordPress中鼠标悬停显示和隐藏评论及引用按钮的实现
2016/01/12 Javascript
BootStrap 智能表单实战系列(五) 表单依赖插件处理
2016/06/13 Javascript
babel基本使用详解
2017/02/17 Javascript
Bootstrap如何激活导航状态
2017/03/22 Javascript
使用jQuery和ajax代替iframe的方法(详解)
2017/04/12 jQuery
vue实现全选和反选功能
2017/08/31 Javascript
JavaScript获取用户所在城市及地理位置
2018/04/21 Javascript
angular2组件中定时刷新并清除定时器的实例讲解
2018/08/31 Javascript
js计算两个时间差 天 时 分 秒 毫秒的代码
2019/05/21 Javascript
详解Vue-cli3.X使用px2rem遇到的问题
2019/08/09 Javascript
原生js+ajax分页组件
2020/01/30 Javascript
js函数柯里化的方法和作用实例分析
2020/04/11 Javascript
小程序实现录音功能
2020/09/22 Javascript
[02:51]DOTA2 2015国际邀请赛中国区预选赛第一日战报
2015/05/27 DOTA
python中os模块详解
2016/10/14 Python
Python判断字符串是否为字母或者数字(浮点数)的多种方法
2018/08/03 Python
解决PyCharm同目录下导入模块会报错的问题
2018/10/13 Python
Python自定义函数计算给定日期是该年第几天的方法示例
2019/05/30 Python
python opencv 图像拼接的实现方法
2019/06/27 Python
基于Python采集爬取微信公众号历史数据
2020/11/27 Python
铭立家具面试题
2012/12/06 面试题
学习之星事迹材料
2014/05/17 职场文书
心理学专业求职信
2014/06/16 职场文书
社区关爱留守儿童活动方案
2014/08/22 职场文书
离婚民事起诉状
2015/08/03 职场文书
Python查找算法的实现 (线性、二分,分块、插值查找算法)
2022/04/24 Python