extjs定义grid的列的时候 如何合并列头
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了extjs定义grid的列的时候 如何合并列头相关的知识,希望对你有一定的参考价值。
我现在出现的效果 是这样的
我想实现真正要的是下面的效果
如何在定义的时候是这样的
this.columns = [
//header : 'Name',
//dataIndex : 'name',
flex : 1,
columns:[
header:'name1',
dataIndex:'name'
,
header:'name2',
dataIndex:'name'
]
,
header : 'Email',
dataIndex : 'email',
flex : 1
];
Extjs Grid - 如何在渲染器函数中获取列的宽度
【中文标题】Extjs Grid - 如何在渲染器函数中获取列的宽度【英文标题】:Extjs Grid - How to get width of column in renderer function 【发布时间】:2013-10-03 05:33:58 【问题描述】:我有一个网格面板和我的专栏之一
columns: [
...
text: 'Name', dataIndex: 'name' , width: 200,
renderer: function (value)
// how to get width of this column (200)
//alert(this.width); // this is width of gridpanel
...
],
如何获取此列的宽度,谢谢。
【问题讨论】:
【参考方案1】:可以肯定,这不是理想的方法,但它确实有效。除了值之外,还有许多其他值传递给渲染器函数。通过 dom 检查,这将为您提供列宽,但我不认为在他们更新 ExtJS 时我会相信它可以工作:
renderer: function (value, metaData, record, rowIndex, colIndex, store, view)
return view.ownerCt.columns[colIndex].getWidth();
或者,您可以使用组件查询来获取网格面板视图,使用行索引查找列,然后以相同的方式获取其宽度:
renderer: function (value, metaData, record, rowIndex, colIndex, store, view)
var grid = Ext.ComponentQuery.query('#gridId')[0];
return grid.columns[colIndex].getWidth();
我真的不知道在这种情况下什么是更好的选择,也不知道为什么他们通过 gridview 而不是 gridpanel 作为渲染器函数中的视图。无论如何,这应该让你开始,祝你好运。
【讨论】:
以上是关于extjs定义grid的列的时候 如何合并列头的主要内容,如果未能解决你的问题,请参考以下文章