// consume JSON of this form:



{
   "images":[

      
{
         "name":"dance_fever.jpg",
         "size":2067,
         "lastmod":1236974993000,
         "url":"images\/thumbs\/dance_fever.jpg"
      },

      
{
         "name":"zack_sink.jpg",
         "size":2303,
         "lastmod":1236974993000,
         "url":"images\/thumbs\/zack_sink.jpg"
      }
   ]
} 

var store = new Ext.data.JsonStore(
{
    url: 'get-images.php',
    root: 'images',
    fields: [
        'name', 'url',

        
{name:'size', type: 'float'},

        
{name:'lastmod', type:'date', dateFormat:'timestamp'}
    ]
});
store.load();


var listView = new Ext.ListView(
{
    store: store,
    multiSelect: true,
    emptyText: 'No images to display',
    reserveScrollOffset: true,

    columns: [
{
        header: 'File',
        width: .5,
        dataIndex: 'name'

    },
{
        header: 'Last Modified',
        width: .35, 
        dataIndex: 'lastmod',
        tpl: '{lastmod:date("m-d h:i a")}'

    },
{
        header: 'Size',
        dataIndex: 'size',
        tpl: '{size:fileSize}', // format using Ext.util.Format.fileSize()

        align: 'right'
    }]
});

// put it in a Panel so it looks pretty


var panel = new Ext.Panel(
{
    id:'images-view',
    width:425,
    height:250,
    collapsible:true,
    layout:'fit',
    title:'Simple ListView (0 items selected)',
    items: listView
});
panel.render(document.body);

// little bit of feedback


listView.on('selectionchange', function(view, nodes)
{
    var l = nodes.length;
    var s = l != 1 ? 's' : '';
    panel.setTitle('Simple ListView ('+l+' item'+s+' selected)');
}); 
	posted on 2009-09-23 09:50 
紫蝶∏飛揚↗ 阅读(4540) 
评论(1)  编辑  收藏  所属分类: 
EXTJS