HTML设置为:
->head <link rel="stylesheet" type="text/css" href="../../resources/css/ext-all.css" /> <!-- LIBS --> <script type="text/javascript" src="../../adapter/ext/ext-base.js"></script> <!-- ENDLIBS --> <script type="text/javascript" src="../../ext-all.js"></script> <script type="text/javascript" src="../../examples/ux/ProgressBarPager.js"></script>//进度条 <script type="text/javascript" src="../../examples/ux/PanelResizer.js"></script>//改变大小 <script type="text/javascript" src="../../examples/ux/PagingMemoryProxy.js"></script>//数据解析 <script type="text/javascript" src="gridWithProgressBarPager.js"></script>
->body <div id="grid-example"></div>
JS编写:
Ext.onReady(function() { //创建数据。 var myData = [ ['大唐集团',99.99,0.9,0.01,'9/1 12:00am'] ]; //change列的renderer渲染函数 function change(value) { if(value > 0) { return '<span style="color:green;">' + value + '</span>'; } else if(value < 0) { return '<span style = "color:red;">' + value + '</span>'; } return value; }; //pctChange列的renderer渲染函数 function pctChange(value) { if(value > 0) { return '<span style = "color:green;">' + value + '%</span>'; }else if(value < 0) { return '<span style = "color:red;">' + value + '%</span>'; } return value; }; //创建store。 var store = new Ext.data.Store({ proxy: new Ext.ux.data.PagingMemoryProxy(myData), remoteSort: true, sortInfo: {field: 'price', direction: 'ASC'}, reader: new Ext.data.ArrayReader({ fields: [ {name: 'company'}, {name: 'price', type: 'float'}, {name: 'change' ,type: 'float'}, {name: 'pctChange', type: 'float'}, {name: 'lastChange', type: 'date', dateFormat: 'n/j h:ia'} ] }) }); //创建gridpanel。 var grid = new Ext.grid.GridPanel({ store: store, columns: [ {id: 'company',header: 'company',width: 160,sortable: true,dataIndex: 'company'}, {header: 'Price', widhth: 75, sortable: true, renderer: 'usMoney',dataIndex: 'price'}, {header: 'Change', width: 75, sortable: true, renderer: change, dataIndex: 'change'}, {header: '% Change', width: 75, sortable: true, renderer: pctChange,dataIndex: 'pctChange'}, {header: 'Last Updated', width: 85, sortable: true, renderer: Ext.util.Format.dateRenderer('m/d/Y'), dataIndex: 'lastChange'} ], stripeRows: true, autoExpandColumn: 'company', height: 320, width: 600, frame: true, title: 'SlidingPager', plugins: new Ext.ux.PanelResizer({ minHeight: 100 }), bbar: new Ext.PagingToolbar({ pageSize: 10, store: store, displayInfo: true, plugins: new Ext.ux.ProgressBarPager() }) }); grid.render('grid-example'); store.load({params: {start: 0, limit: 10}}); });