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. Multiple actions were found that match the request Web API

    在WebAPI工程入口不对外公开的接口不能使用public. [HttpPost] public string PostRequest([FromBody] Model model) { /// } ...

  2. <?xml version="1.0" encoding="utf-16"?>. use different encoding

    public string Serialize<T>(T serializeClass) { string xmlString = string.Empty; try { if (seri ...

  3. Redis-cluster集群【第二篇】:redis持久化

    Redis持久化原理: Redis支持两种持久化:RDB和AOF模式 一.名词解释: RDB:持久化可以在指定的时间间隔内生成数据集的时间点快照(point-in-time snapshot).AOF ...

  4. knockout-validation不自动插入错误消息

    <div data-bind="validationOptions:{insertMessages:false}"> <div class="valid ...

  5. line-height:150%和 line-height:1.5 的区别

    父元素line-height为150%或1.5em时,依据父元素的字体大小计算出行高值让子元素继承父元素line-height为1.5时,依据子元素字体大小计算其行高值.

  6. Java并发编程核心方法与框架-exchanger的使用

    Exchanger可以使两个线程之间传输数据,比生产者/消费者模式使用wait/notify更加方便. Exchanger中的exchange()方法具有阻塞的特点,此方法被调用后等待其他线程来取数据 ...

  7. mysql 用sql 语句去掉某个字段重复值数据的方法

    示例代码如下: create table tmp as select min(主键) as col1 from 去重表名 GROUP BY 去重字段; delete from 去重表名 where 主 ...

  8. Xcode常用技巧(1)-使用Xcode进行代码分析及GDB调试

    1. 使用Xcode分析代码,分析分为静态分析及动态分析 静态分析:(Xcode-Product-Analyze)  检测代码是否有潜在的内存泄露  编译器认为不太合适的代码 运行结果: 若程序有 ...

  9. html css 网络 页面布局 颜色 参考 拾取器网址

    http://blog.163.com/wujinhongisme@126/blog/static/3613698020095115919389/ ========================== ...

  10. systemctl 取代 service

    要使用systemd, linux内核版本要高于: 2.6.39 systemctl的命令格式: systemctl 动作命令(如start stop restart status) 服务名称.ser ...