var sm = new Ext.grid.CheckboxSelectionModel({singleSelect:false}); var cm = new Ext.grid.ColumnModel({ defaults: { css : 'height:25px; font-size:15; vertical-align: middle;' }, columns:[ sm, new Ext.grid.RowNumberer({ renderer:function(value,metadata,record,rowIndex){ return rowStart + 1 + rowIndex; }}), {id:'id',header: "ID", width: 50, sortable: true, dataIndex: 'id', css: 'font-size: 15px;', align: 'center'}, {header: "标题", width: 240, sortable: true, dataIndex: 'title', css: 'font-size: 15px;', align: 'center'}, {header: "重要性", width: 102, sortable: true, dataIndex: 'level', css: 'font-size: 15px;', align: 'center', renderer: function(value){if(value==0) return '一般笔记';if(value==1) return '比较重要';if(value==2) return '重要笔记';}}, {header: "共享状态", width: 120, sortable: true, dataIndex: 'status1', css: 'font-size: 15px;', align: 'center', renderer: function(value){if(value==0) return '仅自己可见';if(value==1) return '请求公开中';if(value==2) return '已经被共享';}}, {header: "创建时间", width: 160, sortable: true, dataIndex: 'createTime',css: 'font-size: 15px;', align: 'center', renderer: Ext.util.Format.dateRenderer('Y-m-d H:i:s')}, {header: "修改时间", width: 160, sortable: true, dataIndex: 'updateTime',css: 'font-size: 15px;', align: 'center', renderer: Ext.util.Format.dateRenderer('Y-m-d H:i:s')} ] })
第一、这个sm,必须在ColumnModel和Gridpanel里都有,而且是同一个,而且也不能和其他Gridpanel共用同一个SM。 第二、要想多选必须点复选框而不能点行。 第三、如果grid行支持拖拽那么也不能多选,这是Extjs的一个问题,貌似没法解决。
如果以上三种都不行,在选行的时候按住Shift或是ctrl就可以了!