|
门户引擎自定义中写了自定义表格,将此门户挂到功能的扩展面板中,通过勾选当前面板的数据过滤功能列表数据,并刷新列表
一、案例效果
筛选前效果:

筛选后效果:

二、 实现思路
1. 在自定义门户引擎中定义gird面板
2. 在事件中写监听事件,选中面板中的某个数据,然后将数据拼接成j_query条件,用来过滤功能列表数据并且刷新列表
3. 在功能中引用扩展面板
三、操作步骤1. 在自定义门户引擎中定义gird面板

2. 在事件中写监听事件,选中面板中的某个数据,然后将数据拼接成j_query条件,用来过滤功能列表数据并且刷新列表

3. 在功能中引用扩展面板

四、相关代码
- /*
- 自定义组件
- 返回Ext组件或者组件配置项,如:Ext.create("Ext.form.Panel",{})或者{xtype:"form"}
- */
- function(){
- //列表数据集
- var store = Ext.create('Ext.data.Store', {
- fields:['name', 'email', 'phone'],
- data:{'items':[
- { '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" }
- ]},
- proxy: {
- type: 'memory',//内存代理,读取本地数据,也可以配置ajax代理,可以查看
- reader: {
- type: 'json',
- root: 'items'//列表展示的数据项配置
- }
- }
- });
- //创建列表
- var grid = Ext.create('Ext.grid.Panel', {
- store: store,
- width: 400,
- selModel: { selType: 'checkboxmodel' }, //选择框
- columns: [
- { text: 'Name', dataIndex: 'name' },
- { text: 'Email', dataIndex: 'email'},
- { text: 'Phone', dataIndex: 'phone' }
- ],
- listeners: {
- 'itemclick': function (view, record, item, index, e) {
- //debugger;
- //Ext.MessageBox.alert("标题",record.data.name);
- var j_query = {"custom": [{"cn": "and","code": "ZHAUNYUN_ABR","type": "=","value": "李四"}]}
- var grid = view.up('jedataview').down('jegridview')
- grid.store.proxy.extraParams.j_query = Ext.encode(j_query);
- grid.reload();
- }
- }
- });
- return grid;
- }
复制代码
|
|