这里有一个简单的问题:我的 Ext JS 应用程序中有一个带有扩展行的工作网格。繁荣。
目前我html
的扩展行中有元素(它只是一个大的div
),但这似乎是所有扩展行都能够显示的。
无论如何在我的扩展行中呈现 Ext 组件?
小伙伴们加油,点赞期待!
这里有一个简单的问题:我的 Ext JS 应用程序中有一个带有扩展行的工作网格。繁荣。
目前我html
的扩展行中有元素(它只是一个大的div
),但这似乎是所有扩展行都能够显示的。
无论如何在我的扩展行中呈现 Ext 组件?
小伙伴们加油,点赞期待!
您可以只将组件渲染到行扩展器元素中。
var grid = Ext.create('Ext.grid.Panel', {
title: 'Simpsons',
plugins: {
ptype: 'rowexpander',
rowBodyTpl : [
'<div class="row-expander-ct"></div>'
]
},
store: {
fields:['name', 'email', 'phone'],
data: [
{ 'name': 'Lisa', "email":"lisa@simpsons.com", "phone":"555-111-1224" },
{ 'name': 'Bart', "email":"bart@simpsons.com", "phone":"555-222-1234" },
{ 'name': 'Homer', "email":"home@simpsons.com", "phone":"555-222-1244" },
{ 'name': 'Marge', "email":"marge@simpsons.com", "phone":"555-222-1254" }
]
},
columns: [
{ text: 'Name', dataIndex: 'name' },
{ text: 'Email', dataIndex: 'email', flex: 1 },
{ text: 'Phone', dataIndex: 'phone' }
],
height: 300,
width: 400,
renderTo: Ext.getBody()
});
grid.store.on({
// Delay the execution of the listener because the grid view will also
// react to this event, and we want the rows to be rendered before we
// modify them...
delay: 1,
load: function() {
Ext.each(grid.el.query('.row-expander-ct'), function(ct) {
Ext.widget('textfield', {
renderTo: ct
,fieldLabel: "Label"
,width: '100%'
});
});
}
});
grid.store.load();