Ext.grid.plugin.RowExpander的简单用法
有时候,我们在grid里渲染数据时,由于某些字段的内容太长,而grid又不会自动出现滚动条,于是溢出的内容后面就会出现省略号, 导致信息展示不完全。如果,这个信息不太重要,展示不完全也无关紧要。可是,有时候,用户需要查看溢出部分的详细内容时,怎么办呢?比如下图中的grid:
this.plugins = [
{
ptype: 'rowexpander',
rowBodyTpl : new Ext.XTemplate(
'<p >信息详情</p>',
'<p>{content}</p>',
'<p >收件人</p>',
'<p>{reciever}</p>'
)
}
];
//定义数据模型类
Ext.define("MsgModel", {
extend: "Ext.data.Model",
fields: [
"id", "content", "reciever", "time"
]
}); //定义一个数据缓存Stroe类
Ext.define("MsgStore", {
extend: "Ext.data.Store",
model: "MsgModel",
autoLoad: true,
proxy: {
type: 'ajax',
url: 'msglist.json',
reader: {
type: 'json',
root: 'data'
}
}
}); //定义视图类
Ext.define("MsgView", {
extend: "Ext.grid.Panel",
forceFit: true, //强制充满表格
initComponent: function() {
this.store = Ext.create("MsgStore");
this.columns = [
{
text: "消息id",
hidden: true,
dataIndex: "id"
},
{
text: "消息内容",
flex: 10,
dataIndex: "content"
},
{
text: "接受人",
flex: 10,
dataIndex: "reciever"
},
{
text: "发送日期",
flex: 2,
dataIndex: "time"
},
//删除按钮
{
xtype: "actioncolumn",
flex: 1,
header: "删除",
itemId: "delete",
align: "center",
items: [
{
iconCls: "delete",
handler: function(grid, rowIndex, colIndex) {
//这里面实现删除的相关操作
}
}
]
}
]; //使用RowExpander
this.plugins = [
{
ptype: 'rowexpander',
rowBodyTpl : new Ext.XTemplate(
'<p >信息详情</p>',
'<p>{content}</p>',
'<p >收件人</p>',
'<p>{reciever}</p>'
)
}
]; //固定菜单栏
this.dockedItems = [
{
xtype: "toolbar",
dock: "top",
defaults: {
labelWidth: 20
},
items: [
{
xtype: "label",
text: "时间范围:",
margin: "0 10"
},
{
xtype: "datefield",
format: "Y-m-d",
emptyText: "日期格式:xxxx-xx-xx",
fieldLabel: "从",
itemId: "beginTime"
},
{
xtype: "datefield",
format: "Y-m-d",
emptyText: "日期格式:xxxx-xx-xx",
fieldLabel: "到",
itemId: "endTime"
},
{
xtype: "button",
iconCls: "key_go",
text: "查询",
itemId: "query"
}
]
}, //分页工具
{
xtype: 'pagingtoolbar',
itemId: "paging",
store: this.store, // same store GridPanel is using
dock: 'bottom',
displayInfo: true
}
];
this.callParent(arguments);
} }); //实例化视图类
Ext.create("MsgView", {
renderTo: Ext.getBody();
})
{
"data": [
{
"id": "1",
"content": "三是要提醒广大学生要自觉遵守国家的法律法规和学校的各项规章制度,放假期间不得将校外人员带入校内游玩、住宿,不参与赌博、传销、邪教以及其它违纪违法活动,不参与有损学生形象的事,积极参加健康有益的社会公益活动。四是在假期教育学生不要自己燃放烟花,加强学生的消防安全教育",
"reciever": "张三,李四,王五,赵六,小明,小红,小张,小黄,小等,小李,小杨,小不点,小姨",
"time": "2015-10-20"
},
{
"id": "2",
"content": "一年级、二年级考试上午半天,于10:40结束考试,请各位家长10:50准时到校接孩子回家。三、四、五、六年级全天考试,上午11:30放学,下午3:50放学,有接孩子的家长请准时到校接孩子回家。",
"reciever": "张三,李四,王五,赵六",
"time": "2015-10-20"
},
{
"id": "3",
"content": "各年级学生在1月14、15号考试结束,就已经开始了假期,请家长在家中看护好自己的孩子,做好学生的安全教育:",
"reciever": "张三,李四,王五,赵六",
"time": "2015-10-20"
},
{
"id": "4",
"content": "注意:返校取通知书的时间是2013年1月18号上午8点,学校9点召开校会、9点30分学生离校(请各位家长注意及时接孩子回家)。",
"reciever": "张三,李四,王五,赵六",
"time": "2015-10-20"
},
{
"id": "5",
"content": "一是提醒学生要注意交通安全,防止发生交通事故。二是提醒学生外出参观旅游、探亲访友时,做好自身安全及防盗、骗、抢劫等恶性事件的发生,且不可乘坐三无、超载车辆。",
"reciever": "张三,李四,王五,赵六",
"time": "2015-10-20"
}
]
}
Ext.grid.plugin.RowExpander的简单用法的更多相关文章
- Ext JS4百强应用: 用grid.plugin.CellEditing做高级查询 --第10强
Ext JS4,用grid.plugin.CellEditing做高级查询: 写了90%,界面出来了,小兴奋就贴出来,还有细节要调整,基本能用. 代码: Ext.define('chenghao.ad ...
- Ext.Net学习笔记19:Ext.Net FormPanel 简单用法
Ext.Net学习笔记19:Ext.Net FormPanel 简单用法 FormPanel是一个常用的控件,Ext.Net中的FormPanel控件同样具有非常丰富的功能,在接下来的笔记中我们将一起 ...
- Ext.grid rowexpander的展开与收缩
这里写Ext.grid.Panel的展开与收缩. 1. 确保在grid存在rowexpander对象: plugins: [{ ptype: 'rowexpander', rowBodyTpl: [' ...
- ext grid 子表格
Ext.define('app.view.main.biz.customer.receipt.followup.FollowUpActionPanel', { extend: 'Ext.grid.Pa ...
- Ext4.0.7使用Ext.grid.ColumnModel报错:TypeError: Ext.grid.Model is not a constructor
代码如下: Ext.onReady(function(){ //定义列 var cm = new Ext.grid.ColumnModel([ {header: '编号', dataIndex: 'i ...
- 导出Ext.grid.Panel到excel
1.客户端定义,基本的想法是form提交表格头定义,数据,以json方式传输 Ext.grid.Panel.addMembers({ exportExcel:function(options){ if ...
- EMCA和EMCTL的简单用法
背景 其实这两个完全是两回事,不过倒是有关系,emca就是建立的资料库,建立后就用emctl来管理服务了.oem有问题基本都是重建emca,然后用emctl来操作. 当时用emca感觉真是一阵空白,太 ...
- [Extjs] Ext4 Ext.grid.Panel 分页实现(mybatis 分页插件-PageHelper 使用)
先看图: 页面js代码: var userStore=Ext.create('Ext.data.Store', { storeId:'userStore', fields:['uname', 'ema ...
- 获取 ext grid 选中行 对象
在ext grid 中如何确定选中行?如何获取选中行数据? 其实很简单,用到了Ext.getCmp('id'),他可以获取到指定id的对象. grid 获取行对象: var row = Ext.get ...
随机推荐
- apple 官方文档 Push Notification Programming
iOS Developer LibraryDeveloper Search Local and Push Notification Programming Guide PDF Table of Con ...
- js获得浏览器页面高宽
不同的浏览器可能会有一些差别,使用的时候请先进行测试. var s = ""; s += " 网页可见区域宽:"+ document.body.clientWi ...
- Topcoder SRM 630div 2
A:不断的消除两个相邻的相等字符,简单题. 真心不习惯STL.. #include<iostream> #include <string> #include <vecto ...
- 山寨小小军团开发笔记 之 GamePool
很多时候我们对于物体(比如弓箭)大量的生成与销毁,这个时候可以把弓箭放在内存池中进行管理,加快体验.自己Copy了一个简易版的. 一.代码 GameObjectPoolManager.cs using ...
- Smarty模板学习
1.基本语法 所有的smarty模板标签都被加上了定界符.默认情况下是 { 和},但它们是可被改变的. 在smarty里,所有定界符以外的内容都是静态输出的,或者称之为不可改变.当smarty遇到了模 ...
- HDU 4639 Hehe(字符串处理,斐波纳契数列,找规律)
题目 //每次for循环的时候总是会忘记最后一段,真是白痴.... //连续的he的个数 种数 //0 1 //1 1 //2 2 //3 3 //4 5 //5 8 //…… …… //斐波纳契数列 ...
- LoaderManager使用详解(一)---没有Loader之前的世界
来源: http://www.androiddesignpatterns.com/2012/07/loaders-and-loadermanager-background.html 感谢作者Alex ...
- Java package详解
Java引入包(package)机制,提供了类的多层命名空间,用于解决类的命名冲突.类文件管理等问题.Java允许将一组功能相关的类放在同一个package下,从而组成逻辑上的类库单元.如果希望把一个 ...
- 怎样在VS2013/MFC中使用TeeChart绘图控件
TeeChart作为一款强大好用的绘图控件,通过它可以绘制出各式各样的图表,包括2D的,还有3D的,绘制的图表美观实用,这里主要讲述如何在VS2013/MFC中使用TeeChart控件,顺便说一下在V ...
- hdu 4759 Poker Shuffle 二进制
思路:主要是二进制的运用. 为了方便从0开始,首先看下右移一下,高位异或1的规律:(可以从右往左一列一列看) 000(0) -> 100(4) -> 110(6) -> 111(7) ...