extjs panelgrid替代方案

时间:2012-11-14 13:24:30

标签: javascript extjs extjs4 accordion

通过ExtJS文档我迷失了名字,找不到我需要的组件。我想显示像这样的对象的属性:

  

姓名:姓名

     

地址:地址

使用JSF,我会使用带有outputText标记的panelgrid。有这样的组件吗? 还有别的东西:我想让这个面板像手风琴一样“可以关闭”,或者类似的东西,这样用户可以在不需要的时候隐藏信息,但我不能让手风琴面板的大小适应内容。当我在primefaces中使用手风琴面板时,如果内容发生变化,则会调整面板的大小。有什么方法可以用ExtJS做到这一点吗?

1 个答案:

答案 0 :(得分:1)

嗯,这个怎么样:

Ext.create('Ext.data.Store', {
    storeId:'simpsonsStore',
    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',
        reader: {
            type: 'json',
            root: 'items'
        }
    }
});

Ext.create('Ext.grid.Panel', {
    title: 'Simpsons',
    collapsible: true,
    store: Ext.data.StoreManager.lookup('simpsonsStore'),
    columns: [
        { text: 'Name',  dataIndex: 'name' },
        { text: 'Email', dataIndex: 'email', flex: 1 },
        { text: 'Phone', dataIndex: 'phone' }
    ],
    height: 200,
    width: 400,
    renderTo: Ext.getBody()
});