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

 更新时间:2013年07月15日 16:49:49   作者:  
本文为大家详细介绍下ExtJs如何设置GridPanel表格文本垂直居中,具体实现代码及截图如下,感兴趣的朋友可以参考下哈,希望对大家有所帮助
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

业务场景,需要实现最终效果图如下:
 
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元素了。
如图:
 
实现过程如下:
复制代码 代码如下:

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;";
}
}
};
}
}

相关文章

  • 解决extjs grid 不随窗口大小自适应的改变问题

    解决extjs grid 不随窗口大小自适应的改变问题

    在使用grid的时候窗口改变了但是grid却不能自适应,下面有个不粗的解决方法,大家可以参考下
    2014-01-01
  • extjs3 combobox取value和text案例详解

    extjs3 combobox取value和text案例详解

    使用combobox时,它有一个hiddenName的属性,专门用于提交combobox中value的值,接下来介绍extjs3 combobox如何取value和text值,感兴趣的朋友可以不要错过了啊
    2013-02-02
  • 学习ExtJS accordion布局

    学习ExtJS accordion布局

    ExtJS accordion布局使用说明,需要的朋友可以参考下。
    2009-10-10
  • 导入extjs、jquery 文件时$使用冲突问题解决方法

    导入extjs、jquery 文件时$使用冲突问题解决方法

    在html页面中,没有导入jquery文件时,可以正常保存,而导入jquery文件后,则不能不存了,发现导入的jquery文件和现有的extjs文件冲突了
    2014-01-01
  • ExtJS GTGrid 简单用户管理

    ExtJS GTGrid 简单用户管理

    前段学了小胖的GTGrid,很方便实用。最近在学习Extjs.做了个CRUD的Demo,包括Extjs版和GTGrid版,做的比较粗糙,希望对大家有一些帮助。
    2009-07-07
  • ExtJS Window 最小化的一种方法

    ExtJS Window 最小化的一种方法

    ExtJS 中Window的窗口最大化只需将maximizable属性设置为true即可,点击最大化按钮就可以将窗体最大化,最小化的操作类似将minimizable设置为true,即可以看到窗体的最小化按钮,但是点击此按钮并不会出发任何操作,Ext没有为窗口预设最小化的任何操作,需要自己自定义最小化功能。
    2009-11-11
  • ExtJs使用IFrame的实现代码

    ExtJs使用IFrame的实现代码

    Iframe 有的时候还是须要的,比如在Tab中嵌入报表、嵌入其它系统的界面。下面代码是项目中一段。希望对用ExtJS开发的兄弟做个参考。
    2010-03-03
  • Extjs表单常见验证小结

    Extjs表单常见验证小结

    Extjs表单验证包括空验证、用vtype格式进行简单的验证、高级自定义密码验证、使用正则表达式验证等等
    2014-03-03
  • ExtJs之带图片的下拉列表框插件

    ExtJs之带图片的下拉列表框插件

    ExtJs是一个非常好的客户端JavaScript,他的很多空间都可以自定义而且也可以扩展。
    2010-03-03
  • 不用写JS也能使用EXTJS视频演示

    不用写JS也能使用EXTJS视频演示

    对于想了解extjs 的朋友有个帮助
    2008-12-12

最新评论

?


http://www.vxiaotou.com