extjs學習之Ext.selection.CheckboxModel




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') //選中的節目名稱(方法二)
}
}
}
}
})
})
})


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM