ext grid 子表格
Ext.define('app.view.main.biz.customer.receipt.followup.FollowUpActionPanel', {
extend: 'Ext.grid.Panel',
border: false,
margin:'10 20 20 20',
hideHeaders: true,
columns: [{
flex : 1,
renderer: function (value, metaData, record, rowIndex) {
var page = "<table>" +
"<tr>" +
"<td><div style='padding-left:10px'>" + record.data.followUpName + "</div></td>" +
"<td><div style='padding-left:50px'>跟进日期:" + record.data.followUpDate + "</div></td>" +
"<td><div style='padding-left:50px'>跟进方式:"+record.data.followUpActionName+"</div></td>" +
"<td><div style='padding-left:50px'>跟进类型:"+record.data.followUptypeName+"</div></td>" +
"</tr>" +
"</table>";
return page;
}
}],
plugins: [{
ptype: 'rowexpander',
rowBodyTpl : new Ext.XTemplate( '<div id="{id}">', '</div>' )
}],
initComponent: function (config) {
var me = this;
var bar = Ext.apply(this, {
dockedItems :[{
xtype: 'toolbar',
dock: 'top',
overflowHandler: 'menu'
}],
store:Ext.create('app.view.main.biz.customer.receipt.followup.FollowUpMainPlanStore',{
autoLoad:true,
customerId:me.customerId,
trackId:me.trackId
}),
listeners:{
afterrender:function() {
me.getStore().load({
//默认展开所有。
callback:function() {
var expander = me.plugins[0];
var count = me.getStore().getCount()
for(var i = count-1; i >= 0; i--) {
expander.toggleRow(i,me.getStore().getAt(i));
}
}
})
}
}
});
this.callParent(arguments);
//注意先后顺序(一定要先渲染之后才能拿到这些值)
me.getView().on('expandBody', function(rowNode, record, expandRow, eOpts){
var parent = document.getElementById(record.get('id'));
if(!parent || !parent.hasChildNodes()) {
var innerGrid = Ext.create('app.view.main.biz.customer.receipt.followup.FollowUpCommentPanel', {
actionId: record.get('id'),
record: record,
renderTo: record.get('id')+''
});
innerGrid.getEl().swallowEvent([
'mousedown', 'mouseup', 'click',
'contextmenu', 'mouseover', 'mouseout',
'dblclick', 'mousemove', 'focusmove',
'focuschange', 'focusin', 'focusenter'
]);
}
});
me.getView().on('collapsebody',function(rowNode, record, expandRow, eOpts){
/*var parent = document.getElementById(record.get('id'));
if(!parent) return;
var child = parent.firstChild;
while (child) {
child.parentNode.removeChild(child);
child = child.nextSibling;
}*/
});
}
});
ext grid 子表格的更多相关文章
- ExtJs 学习之开篇(三)Ext.grid.Panel表格中的处理
Ext.grid.Panel Ext.create('Ext.grid.Panel',{ title:'测试表格', width:400, height:20 ...
- Ext.grid.Panel表格分页存储过程
/*首先需要引入两个Extjs插件类 Ext.ux.data.PagingMemoryProxy和Ext.ux.ProgressBarPager这两个类*/ /*下面是控制弹出窗体放大缩小时窗体居中的 ...
- Ext.grid.Panel表格分页
转载:http://www.cnblogs.com/libingql/archive/2012/04/22/2464994.html cshtml @{ Layout = null; } <!D ...
- ExtJs的Ext.grid.GridPanel不能选择复制表格中的内容解决方案
今天遇到grid复制的问题,在网上找到了一个解决办法,只需改下CSS和JS,给大家分享一下: 本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/dy_paradise/a ...
- jqGrid subGrid配置 如何首次加载动态展开所有的子表格
有时候需求需要默认加载表格的时候把子表格的数据也显示出来,经过研究相关SubGrids API配置如下: 属性 类型 描述 默认值 subGrid boolean 设置为true启用子表格.如果启用子 ...
- Ext.grid.GridPanel属性及方法等
1.Ext.grid.GridPanel主要配置项:store:表格的数据集columns:表格列模式的配置数组,可自动创建ColumnModel列模式autoExpandColumn:自动充满表格未 ...
- Ext.grid.plugin.RowExpander的简单用法
有时候,我们在grid里渲染数据时,由于某些字段的内容太长,而grid又不会自动出现滚动条,于是溢出的内容后面就会出现省略号, 导致信息展示不完全.如果,这个信息不太重要,展示不完全也无关紧要.可是, ...
- Ext.grid.Panel 数据动态改变后刷新grid
gridPanel中加载的数据分为两种:一种是本地数据加载,那另一种就是后台数据加载. 在表格中增.删.改.查 是必不可少的. 那么数据动态改变后怎样刷新表格中的数据呢. 一.后台取数据 var gr ...
- Ext.grid.GridPanel的属性
1.Ext.grid.GridPanel 主要配置项: store:表格的数据集 columns:表格列模式的配置数组,可自动创建ColumnModel列模 ...
随机推荐
- CodeForces 716B Complete the Word
题目链接:http://codeforces.com/problemset/problem/716/B 题目大意: 给出一个字符串,判断其是否存在一个子串(满足:包含26个英文字母且不重复,字串中有‘ ...
- CentOS 7 AMD64安装nginx和mysql
NGINX: rpm -ivh http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.8.0-1.el7.ngx.x86_64.rpm 查看: ...
- LOD
[教程] 三分钟了解LOD在游戏里面的运用 http://www.narkii.com/club/thread-321290-1.html Unity3d 游戏场景优化 - LOD(Level-of- ...
- jsp的标签
一.JSP标签介绍 JSP标签也称之为Jsp Action(JSP动作)元素,它用于在Jsp页面中提供业务逻辑功能,避免在JSP页面中直接编写java代码,造成jsp页面难以维护. 二.JSP常用标签 ...
- Centos安装Kafka集群
kafka是LinkedIn开发并开源的一个分布式MQ系统,现在是Apache的一个孵化项目.在它的主页描述kafka为一个高吞吐量的分布式(能 将消息分散到不同的节点上)MQ.在这片博文中,作者简单 ...
- vim颜色选择+按<F9>自动编译运行+其他基本配置(ubuntu)
(以下是ubuntu上的配置........ 但如果你是在window上的,直接用一下配置吧(懒得介绍了)=.= syntax on filetype indent plugin on set rul ...
- Swift语法入门
正文参考: https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Progra ...
- linux 脚本命令匹配并获取下一行数据
三种方式: 匹配“Title”并打印出匹配行的下一行 grep -A 1 'Title' urfile awk '/Title/{getline a;print $0"\n"a ...
- php 正则表达式的使用
要点:php正则表达式要用双引号,且要用“/ /”斜线做开始结束. 1.preg_match . preg_match_all 两者的区别:第一次匹配成功后就会停止匹配,如果要实现全部结果的匹配,即搜 ...
- Call to undefined function mysqli_connect()
PHP5.0后新支持一个mysqli.dll的扩展功能,能让用户更加简洁的调用mysql数据库. 需要在Php.ini配置中将下面代码前的;去掉.extension=php_mysqli.dll