
Ext.onReady( function() {
var store=Ext.create('Ext.data.Store', {
storeId:'simpsonsStore',
fields:['id','name','description','action'],
data:[{
"id":'1',
"name" : "節目一",
"description" : "lisa@simpsons.com",
"action":'false'
},{
"id":'2',
"name" : "節目二",
"description" : "mary@simpsons.com",
"action":'true'
},{
"id":'3',
"name" : "節目三",
"description" : "jun@simpsons.com",
"action":'false'
}],
proxy: {
type:'memory',
reader: {
type:'json'
}
}
});
var grid=Ext.create('Ext.grid.Panel', {
renderTo : Ext.getBody(),
width : 450,
height : 250,
margin : '0 0 0 100',
store:store,
columns:[{
header:'姓名',
dataIndex:'name',
flex:1
},{
header:'描述',
dataIndex:'description',
flex:1
}],
selModel:
Ext.create('Ext.selection.CheckboxModel', {
injectCheckbox:1,//checkbox位於哪一列,默認值為0
mode:'single',//multi,simple,single;默認為多選multi
checkOnly:true,//如果值為true,則只用點擊checkbox列才能選中此條記錄
allowDeselect:true,//如果值true,並且mode值為單選(single)時,可以通過點擊checkbox取消對其的選擇
enableKeyNav:false,
listeners: {
deselect: function(model,record,index) {//取消選中時產生的事件
},
select: function(model,record,index) {//record被選中時產生的事件
record.get('name');//選中的節目名稱
},
selectionchange: function(model,selected) {//選擇有改變時產生的事件
var records=model.getSelection();
if(records!='') {
for(var i in records) {
records[i].get('name')//選中的節目名稱(方法一)
}
}
if(selected!='') {
for(var p in selected) {
selected[p].get('name') //選中的節目名稱(方法二)
}
}
}
}
})
})
})