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 子表格的更多相关文章

  1. ExtJs 学习之开篇(三)Ext.grid.Panel表格中的处理

    Ext.grid.Panel Ext.create('Ext.grid.Panel',{        title:'测试表格',        width:400,        height:20 ...

  2. Ext.grid.Panel表格分页存储过程

    /*首先需要引入两个Extjs插件类 Ext.ux.data.PagingMemoryProxy和Ext.ux.ProgressBarPager这两个类*/ /*下面是控制弹出窗体放大缩小时窗体居中的 ...

  3. Ext.grid.Panel表格分页

    转载:http://www.cnblogs.com/libingql/archive/2012/04/22/2464994.html cshtml @{ Layout = null; } <!D ...

  4. ExtJs的Ext.grid.GridPanel不能选择复制表格中的内容解决方案

    今天遇到grid复制的问题,在网上找到了一个解决办法,只需改下CSS和JS,给大家分享一下: 本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/dy_paradise/a ...

  5. jqGrid subGrid配置 如何首次加载动态展开所有的子表格

    有时候需求需要默认加载表格的时候把子表格的数据也显示出来,经过研究相关SubGrids API配置如下: 属性 类型 描述 默认值 subGrid boolean 设置为true启用子表格.如果启用子 ...

  6. Ext.grid.GridPanel属性及方法等

    1.Ext.grid.GridPanel主要配置项:store:表格的数据集columns:表格列模式的配置数组,可自动创建ColumnModel列模式autoExpandColumn:自动充满表格未 ...

  7. Ext.grid.plugin.RowExpander的简单用法

    有时候,我们在grid里渲染数据时,由于某些字段的内容太长,而grid又不会自动出现滚动条,于是溢出的内容后面就会出现省略号, 导致信息展示不完全.如果,这个信息不太重要,展示不完全也无关紧要.可是, ...

  8. Ext.grid.Panel 数据动态改变后刷新grid

    gridPanel中加载的数据分为两种:一种是本地数据加载,那另一种就是后台数据加载. 在表格中增.删.改.查 是必不可少的. 那么数据动态改变后怎样刷新表格中的数据呢. 一.后台取数据 var gr ...

  9. Ext.grid.GridPanel的属性

    1.Ext.grid.GridPanel     主要配置项:          store:表格的数据集          columns:表格列模式的配置数组,可自动创建ColumnModel列模 ...

随机推荐

  1. 微信H5手指滑动屏蔽微信的默认效果

    我们的H5页面放在微信上时,如果你向上滑动或者向下滑动屏幕时,会发现一些微信的特征,譬如:网页由www.baidu.com提供. 去掉这个微信的特征,代码如下: var f; n.addEventLi ...

  2. 总结CSS面试题目的考察点及常见布局问题整理

    整理网上流传的若干份面试题目,突发奇想,总结关于CSS面试题目的考察点,发现问题大多围绕几个属性和几种题目,水平有限,仅供参考. 写这个博文内心有种莫名奇妙的自我谴责感,实在不应该把面试层叠样式“应试 ...

  3. 快速lable内边距

  4. mssql禁用启用主键约束

    EXEC sp_msforeachtable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'  --禁用 EXEC sp_msforeachtable 'ALTER TA ...

  5. Java中为什么有abstract interface 修饰类?

    如果有人问你为什么有abstract interface 修饰类,答案一定是他看到的这种方式一定是反编译出来的结果.实际中abstract interface和interface修饰的类没有区别. 下 ...

  6. 在nodejs下express 从安装到运行的全过程

    安装过程: npm install -gd express  npm install -g express-generator  express -V //查看版本,现在一般都是4.x系列的 expr ...

  7. [整理]iis7.5下部署MVC5

    IIS7.5下部署MVC5 测试环境服务器部署 windows server 2008 r2 1.安装iis 7.5 2.安装 .net framework4.5.1并注册 cd C:\Windows ...

  8. [原] Android 自定义View 密码框 例子

    遵从准则 暴露您view中所有影响可见外观的属性或者行为. 通过XML添加和设置样式 通过元素的属性来控制其外观和行为,支持和重要事件交流的事件监听器 详细步骤见:Android 自定义View步骤 ...

  9. R中的par()函数的参数

    把R中par()函数的主要参数整理了一下(另外本来还整理了每个参数的帮助文档中文解释,但是太长,就分类之后,整理为图表,excel不便放上来,就放了这些表的截图)

  10. NHibernate配置

    因为NHibernate被设计为可以在许多不同环境下工作,所以它有很多配置参数.幸运的是,大部分都已经有默认值了. NHibernate.Test.dll包含了一个示例的配置文件app.config, ...