日期:2014-05-16 浏览次数:20772 次
Ext.Loader.setConfig({enabled: true}); Ext.Loader.setPath('Ext.ux', 'js/ext-4.0.0/examples/ux/'); Ext.require([ 'Ext.grid.*', 'Ext.data.*', 'Ext.util.*', 'Ext.grid.PagingScroller', 'Ext.ux.RowExpander', 'Ext.selection.CheckboxModel' ]); var rec = ""; Ext.onReady(function(){ Ext.define('ForumThread', { extend: 'Ext.data.Model', fields: [ 'title', 'forumtitle', 'forumid', 'author', {name: 'replycount', type: 'int'}, {name: 'lastpost', mapping: 'lastpost', type: 'date', dateFormat: 'timestamp'}, 'lastposter', 'excerpt', 'threadid' ], idProperty: 'threadid' }); // create the Data Store //var sm = Ext.create('Ext.selection.CheckboxModel'); var store = Ext.create('Ext.data.Store', { id: 'store', pageSize: 200, model: 'ForumThread', remoteSort: true, buffered: true, proxy: { type: 'jsonp', url: 'http://www.sencha.com/forum/remote_topics/index.php', extraParams: { total: 50000 }, reader: { root: 'topics', totalProperty: 'totalCount' }, simpleSortMode: true }, sorters: [{ property: 'lastpost', direction: 'DESC' }] }); function renderTopic(value, p, record) { return Ext.String.format( '<a href="http://sencha.com/forum/showthread.php?t={2}" target="_blank">{0}</a>', value, record.data.forumtitle, record.getId(), record.data.forumid ); } var sm = Ext.create('Ext.selection.CheckboxModel'); var grid = Ext.create('Ext.grid.Panel', { width: 700, height: 500, id:'xxgrid', title: 'checkbox', store: store, selModel: sm, selModel : new Ext.selection.CheckboxModel({singleSelect : false}), frame: true, verticalScrollerType: 'paginggridscroller', loadMask: true, disableSelection: false, invalidateScrollerOnRefresh: false, viewConfig: { trackOver: false }, // grid columns columns:[ { id: 'topic', text: "Topic", dataIndex: 'title', flex: 1, renderer: renderTopic, sortable: false },{ text: "Author", dataIndex: 'author', width: 100, hidden: true, sortable: true },{ text: "Replies", dataIndex: 'replycount', align: 'center', width: 70, sortable: false },{ id: 'last', text: "Last Post", dataIndex: 'lastpost', width: 130, renderer: Ext.util.Format.dateRenderer('n/j/Y g:i A'), sortable: true }], renderTo: 'grid-example' }); // trigger the data store load store.guaranteeRange(0, 199); }); function chkVal(){ var selChk; rec = Ext.getCmp('xxgrid').getSelectionModel().getSelection(); //alert(rec.get['Replies']); for (var i = 0; i < rec.length; i++) { selChk += rec[i].get("last") if (i < rec.length - 1) { selChk = selChk + ","; } } alert(selChk); }